gpt4 book ai didi

c - C 语言的翻译限制

转载 作者:行者123 更新时间:2023-11-30 18:20:07 26 4
gpt4 key购买 nike

我正在尝试通过 scanf 捕获用户的输入:

char numStrings[5000];   
printf("Enter string of numbers:\n\n");
scanf("%s", numStrings);

但是,输入的字符串长度为 5000 个字符。 c99 中的翻译限制是 4095 个字符。我是否需要指示用户将其输入分成两半,或者是否有我想不到的更好的解决方法?

最佳答案

你可以输入一个比这个大得多的字符串,在普通操作系统中堆栈至少为1MB,在Linux上为8MB,所以这是实际的限制,1M是1024KB,所以你可以尝试使用512KB,即524288B

char string[524288];
scanf("%524287s", string);

很可能没问题,如果仍然太小,则使用malloc()

关于c - C 语言的翻译限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30419563/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com