指针字节的问题?

来源:百度知道 编辑:UC知道 时间:2024/06/10 23:29:00
char str[]="hello";
char *p=str;
cout<<sizeof(*p)<<endl;
cout<<sizeof(p)<<endl;
最后的输出结果有什么不同 并解释一下

p是char *,所以*p的值是char类型,因此大小是1字节。
p是指针,指针的大小是2字节(32位系统中是4字节)。

cout<<sizeof(*p)<<endl;
cout<<sizeof(p)<<endl;
cout<<sizeof(*str)<<endl;
cout<<sizeof(str)<<endl;
或许你这样试下会学更多知识