使用c语言中的%s
可以打印的最大尺寸是多少。
我试图使用fprintf
在文件中打印一个缓冲区,但在某一点上我觉得它已经超过了320KB。 fprintf
正在将截断的字符串写入文件。 %s
有任何限制吗?
答案 0 :(得分:8)
printf()
有一个上限。它将成功处理最多N char
秒。 N在至少 4095。
任何单次转换可以产生的字符数至少应该是 4095.C11dr§7.21.6.115
[编辑]
如果有这么大的(320 kB)预期输出,如果可能,请考虑使用fputs(s, stream)
而不是fprintf(stream, "%s", s);
,但没有此4095限制。