c语言里面:
int a[]={1,2,3,4};
cout<<a<<endl;
char b[]="abcd";
cout<<b<<endl;
为什么结果会不同,原理在哪
c语言里面:
int a[]={1,2,3,4};
cout<<a<<endl;
char b[]="abcd";
cout<<b<<endl;
为什么结果会不同,原理在哪
字符数组是可以用这种方式输出的,因为数组名即代表首地址,数组是一块连续的内存空间,所以能直接输出.如果是其他类型的数组则输出的是一个地址。
ostream的<<操作符 专门重载了char*的版本。因为char*很特殊,C里用它来表示字符串。