首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于指针的一些有关问题(1)

2012-04-02 
关于指针的一些问题(1)[codeC/C++][/code]char xachar y[10]ABCDEABCDchar *ptrNULLptr &xco

关于指针的一些问题(1)
[code=C/C++][/code]
char x="a";
char y[10]="ABCDEABCD";
char *ptr=NULL;
ptr= &x;
cout<<sizeof(x)<<endl; //1 why?
cout<<sizeof(ptr)<<endl; //4 why?

ptr=y;
cout<<sizeof(y)<<endl; //10 why?
cout<<sizeof(ptr)<<endl; //4 why?
cout<<sizeof(*ptr)<<endl; //1 why?

[解决办法]
cout<<sizeof(x)<<endl; //1 x是一个char 
cout<<sizeof(ptr)<<endl; //4 ptr是个指针,32位下长度为4

ptr=y;
cout<<sizeof(y)<<endl; //10 字符串长为9,再加上结束符'\0'
cout<<sizeof(ptr)<<endl; //4 ptr是个指针,32位下长度为4
cout<<sizeof(*ptr)<<endl; //1 ptr是指向char的指针,*ptr则是个char

热点排行