c语言题,sizeof,字符指针,字符数组

如题所述

你好,str1是一个字符指针,sizeof(str1)其实是就求这个字符指针所占的字节数,为4.
而sizeof(str2)就是求字符数组的长度,因为字符串是以\0结尾的,在算字符串的长度时不算在内,所以字符串的长度是5,但是用来存放它的字符数组的长度要比字符串的长度大1,为6.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-12
D 是正确答案
第2个回答  2014-03-12
sizeof函数功能是用于计算数据空间的字节数。
sizeof计算数据(包括数组、变量、类型、结构体等)所占内存空间,用字节数表示(当然用在字符数组计算"\0"的大小)。
使用sizeof时string的注意事项:string s="hello";sizeof(s)等于string类的大小(32)一个字节是8位,所以在32位编译器上第一个所占的字节数为32/8=4;对于一般数组而言sizeof 方法:数组元素个数=占用字节/数组类型所占字节。在此题中数组str2[]="Hello"一共占用6个字节(包括5个字母各占一个字节再加上一个结束符‘\0’占一个字节,共6个字节)。所以选D本回答被提问者采纳
相似回答