char str[3] = {'a','b','\0'};
cout<<str<<endl; //1
char *pChar = str;
cout<<pChar<<endl; //2
int in[3] = {1,2,3};
cout<<in<<endl; //3
以上代码,1和2处的str、pChar不是指针么?为什么输出的是“ab”,而不是一个地址?
3处的in输出的就是个地址。
char str[3] = {'a','b','\0'};
cout<<str<<endl; //1
char *pChar = str;
cout<<pChar<<endl; //2
int in[3] = {1,2,3};
cout<<in<<endl; //3
以上代码,1和2处的str、pChar不是指针么?为什么输出的是“ab”,而不是一个地址?
3处的in输出的就是个地址。
cout对此有重载,如果是字符串,输出的是内容。你可以做一个强制类型转换,让它调用整数的重载版本
cout<<(int)pChar<<endl;