Asi*_*taq 4 c++ arrays initializing
我有点困惑。这些代码之间的逻辑区别是什么?
#include <iostream>
using namespace std;
int main(){
char a[5]="ABCD"; // this
cout << a;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
其次是
char a[5]={"ABCD"}; // this
Run Code Online (Sandbox Code Playgroud)
第三是
char a[5]={'A','B','C','D'}; // this
Run Code Online (Sandbox Code Playgroud)
char a[5]={"ABCD"};
char a[5]={'A','B','C','D','\0'};
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,字符数组a被声明为具有 5 个字符类型元素的大小:组成单词"ABCD"的 4 个字符,加上最后一个空字符('\0'),它指定了序列,在第二种情况下,当使用双引号 (") 时,它会自动附加。注意通过逗号添加空字符分隔。用双引号 ("") 括起来的一系列字符称为字符串常量。C 编译器可以'\0'在字符串常量的末尾自动添加一个空字符来表示字符串的结尾。
来源:此链接可以更好地帮助您
| 归档时间: |
|
| 查看次数: |
3065 次 |
| 最近记录: |