6

我正在尝试创建一个长字符串文字,我将其存储在 std::string 中。如果我创建一个最多大约 2600 个字符的文字,那么一切都很好。如果我超出了符号的数量,我只会打印一些随机的垃圾字符。

我一直使用 C 标准作为指导,环境限制被指定为“字符串文字中的 4095 个字符(连接后)”。但是代码是用 C++ 编写的。

所以我的问题是,C++ 字符串文字中的最少字符数是多少?

(问题可能在代码的其他地方,但我想确保我没有通过标准设置的限制。文本打印在 RichEdit 控件中,所以我怀疑是罪魁祸首。)

4

1 回答 1

11

最小值在

附件 B
实施数量[限制]

字符串文字中的字符(连接后)[65 536]。

但请注意:

1) 由于计算机是有限的,C++ 实现不可避免地受限于它们可以成功处理的程序的大小。每个实施都应在已知的情况下记录这些限制。本文档可能会引用存在的固定限制,说明如何根据可用资源计算可变限制,或者说固定限制不存在或未知。

2) 限制可能会限制包括以下描述的数量或其他数量。建议将每个数量后面的括号中的数字作为该数量的最小值。但是,这些数量仅作为指导,并不能确定合规性。(强调我的)

不过,您的实现应该为您提供这个数字。

于 2012-10-29T16:13:31.017 回答