9.设有下面的程序段:则下列叙述正确的是( ).char s[]="china"; char * p; p=s;A)s和p完全相同 B)数组s中的内容和指针变量p中的内容相等C) *p与s[0]相等 D) s数组长度和p所指向的字符串长度相等答案

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/02 22:16:08
9.设有下面的程序段:则下列叙述正确的是( ).char s[]=

9.设有下面的程序段:则下列叙述正确的是( ).char s[]="china"; char * p; p=s;A)s和p完全相同 B)数组s中的内容和指针变量p中的内容相等C) *p与s[0]相等 D) s数组长度和p所指向的字符串长度相等答案
9.设有下面的程序段:则下列叙述正确的是( ).
char s[]="china"; char * p; p=s;
A)s和p完全相同 B)数组s中的内容和指针变量p中的内容相等
C) *p与s[0]相等 D) s数组长度和p所指向的字符串长度相等
答案为什么选C不选D?

9.设有下面的程序段:则下列叙述正确的是( ).char s[]="china"; char * p; p=s;A)s和p完全相同 B)数组s中的内容和指针变量p中的内容相等C) *p与s[0]相等 D) s数组长度和p所指向的字符串长度相等答案
(A) s和p完全相同a的类型是cha数组p的类型是char指针 不一样(B)数组s中的内容和指针变量p中的内容想等数组s中的内容是:"china"指针变量p中的内容是:s[0]的地址(&s[0])一个是字符串 一个是地址 不一样(D)s数组长度和p所指向的字符串长度相等s数组长度包括 '\0'的位置p所指向的字符串长度不包括 '\0'的位置s数组长度 == p所指向的字符串长度 + 1 (1就是'\0'占有的位置) 显然 不相等

char s[]="china";是定义了一个大小为5的字符数组,并初始化为china,char*p;定义了一个指针,p=s;将指针P指向数组S的内存首地址,用*p和s输出的结果是一样的,但p和s还是有区别的,p本身申请的地址空间内存放的是s的首地址的内存空间,而S的连续内存空间内存放的是值china。s数组长度与p指向的字符串长度分别是多少?...

全部展开

char s[]="china";是定义了一个大小为5的字符数组,并初始化为china,char*p;定义了一个指针,p=s;将指针P指向数组S的内存首地址,用*p和s输出的结果是一样的,但p和s还是有区别的,p本身申请的地址空间内存放的是s的首地址的内存空间,而S的连续内存空间内存放的是值china。

收起