我想知道找出字符串文字大小限制的方法是什么。我猜不同的编译器确实提供了字符串文字的最大大小限制但是我如何以编程方式找到它或者有一些标准的头文件来维护它一些宏的大小限制?
答案 0 :(得分:3)
我检查了C99草案,它说的是字符串文字中应该支持至少4,095个字符;似乎没有最大长度。这对我来说很有意义;为什么要施加这样的限制?
我真的不认为你可以在运行时“检测”这个。当然,通过检查编译是否成功,您应该能够在编译时粗略地检测到它。编写一个程序,生成一个包含给定长度的字符串文字的程序,然后尝试构建该输出并迭代直到构建失败。当然,你只会学到一些关于你的特定编译器的东西,而不是一般的教训。
也许你应该试着说明你的实际问题,而你似乎有点hinting at it。