指针指向数组,数组为字符串数组,这几者之间的关系
1个回答
展开全部
需要认清楚几个事情,首先s是一个数组型指针,它指向的是数组的第一个元素,它存储的内容是第一个元素的地址,也就是“c”的地址。而p是char型指针,指向的也是“china”这个字符串,p存的也是第一个字符的地址。那么来看选项:
A、s和p是完全相同的,由上面可以判定,除非有概念上的区别(数组指针和char指针)
B、s中的内容是“china”这个数组,而p中的内容是“c”的地址,所以说相等是错误的。
C、s数组长度为5+1(这个1是\0)
p所指向的字符串长度是5,少1
错误
D、*p是取地址运算,指向第一个元素
所以取地址后得到的是“c”
和s[0]相等
D正确
如果是单选
就选D就行了
A、s和p是完全相同的,由上面可以判定,除非有概念上的区别(数组指针和char指针)
B、s中的内容是“china”这个数组,而p中的内容是“c”的地址,所以说相等是错误的。
C、s数组长度为5+1(这个1是\0)
p所指向的字符串长度是5,少1
错误
D、*p是取地址运算,指向第一个元素
所以取地址后得到的是“c”
和s[0]相等
D正确
如果是单选
就选D就行了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询