c – 将字符串写入超过4095个字符的文件

我正在构建一个分布式消息传递系统,供用户在不同的Linux终端上相互发送消息.我正在寻找我的问题的场景是当我尝试将字符串写入超过4095字节/字符的文本文件时.该字符串将从用户输入生成.我已经读过最大字符串大小的ISO C99标准是4095字节/字符.我应该限制用户只输入小于4095字节的字符串吗?我知道简单的聊天消息通常很短,但我关注的场景如下.

用户尝试从某处复制并粘贴摘录,然后将其发送给其他用户.如果消息长于4095字节,则会在第4095个字符后截断字符.因此,用户只会收到第一部分.

我不确定这一点,但我想知道如果字符串长度超过4095个字符,我应该采取增加堆栈大小的路径,或者是否有另一种方式通过以某种方式将字符串分开,因为我接受它然后写逐个文件的多个字符串.

最佳答案
这个限制是关于字符串文字,比如“hello world”.这不是您以编程方式构造的字符串的一般限制.你可以创建更多,大于4095字节的字符串!

转载注明原文:c – 将字符串写入超过4095个字符的文件 - 代码日志