c++ 的sizeof问题
char *s="ab\0234\\\n79"; cout<<strlen(s)<<','<<sizeof(s);
输出为什么是8,4
我觉得应该是8,8才对啊
[解决办法]
sizeof(s)
等价于
sizeof(char*)
32位代码char*就是4个字节。
char s[]="ab\0234\\\n79"; cout<<strlen(s)<<','<<sizeof(s);
这样你再试试
[解决办法]
1楼正解,sizeof(s),s是个指针,大小是多少?如果s是个数组名,那么siezof(s)就是数组占用的空间大小