c++ - C++中数组char的初始化

标签 c++ arrays visual-studio visual-studio-2012 char

下面的方法是否正确初始化一个字符数组?我在我的代码中多次使用了它,并且在 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/

相关文章:

php - 将 3 个平面索引数组合并为一个平面索引数组

c# - 如何重试直到满足某些条件

visual-studio - 无法以其他用户身份启动Visual Studio 2015

c++ - C++ 中的自动指针 (auto_ptr)

c++ - 在 OpenGL 上用 Bresenham 算法画圆

c++ - 为什么匿名 union 不能包含具有非平凡构造函数/析构函数的成员?

php - PHP如何将每个数组的第一个元素提取到数组中

c++ - 父进程中子进程的数量 C/C++, LINUX

python - 将 NumPy 对象与 "None"进行比较时出现 FutureWarning

visual-studio - 如何在Visual Studio 2008中折叠所有XML注释