Mar*_*ram 24 c++ initialization declaration
如果我有以下内容:
char test[10] = "#";
Run Code Online (Sandbox Code Playgroud)
是test[1]通过test[9]保证\0吗?或者只test[1]保证是\0?
Vla*_*cow 35
这个定义
char test[10] = "#";
Run Code Online (Sandbox Code Playgroud)
相当于
char test[10] = { '#', '\0' };
Run Code Online (Sandbox Code Playgroud)
这是数组的两个元素由初始化器显式初始化.数组的所有其他元素将初始化为零,隐式地将它们设置为'\ 0'
根据C++标准(第8.5.2节字符数组)
3如果初始化器的数量少于数组元素,则未明确初始化的每个元素都应进行零初始化(8.5).
| 归档时间: |
|
| 查看次数: |
720 次 |
| 最近记录: |