下面的方法是否正确初始化一个字符数组?我在我的代码中多次使用了它,并且在 Visual Studio 2015 中运行该程序没有显示任何错误。而当我在 Visual Studio 2012 中编译相同的程序时,我遇到了很多错误,主要是 char 数组初始化。 所以,我的问题是可以这样初始化吗? Visual Studio 2012 是否显示错误?
非常感谢任何帮助!
char arr[10]={0};
最佳答案
在 C++11 及以后的版本中(由 Visual Studio 2015 广泛实现,几乎没有遗漏),您可以更进一步编写
char arr[10] = {};
这会将 arr
的每个元素设置为 '\0'
如果可以的话,我很想放弃对 VS2012 的编译支持(它并不打算实现 C++11 标准):C++11 标准是C++。也就是说,char arr[10] = {0};
是有效的 C++03,您的编译错误是由于您代码中的其他错误造成的。
关于c++ - C++中数组char的初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41182202/