黑马程序员技术交流社区
标题:
还有第19题
[打印本页]
作者:
克莱斯勒
时间:
2015-9-8 21:31
标题:
还有第19题
19. 定义char *oldstr = "fengjie"; char newstr[20] = "aibanzhang";//
如果oldStr[0]=’w’和newStr[0]=’q’的结果分别是?D
A、对 对 B.错 错
C、对 错 D.错 对
作者:
kylmetz
时间:
2015-9-8 21:35
这一题的答案选D?
作者:
15706025762
时间:
2015-9-8 21:37
我是来混脸熟的
作者:
lionheartism
时间:
2015-9-8 22:14
char* = “”这种情况是申请一段内存作为常量来放到内存中并让指针指向他,所以当对常量的内容进行更改时,程序会长生错误,而char[]这种数组形式就可以很方便的更改每一个元素的内容了,所以为错,对
作者:
408205555
时间:
2015-9-9 11:28
char *oldstr = "fengjie";
这是声明了一个字符串常量,常量的值是不可以改变的,但是地址的指向是可以变的,所以错了。
char newstr[20] = "aibanzhang"
这就是一个数组,唯一能迷惑人的地方就是它是一个可以保存字符串的数组,本质就是数组,修改数组的元素值想怎么修改就怎么修改。
作者:
lumangmang
时间:
2015-9-9 11:56
第一个是错的 第二个才对
作者:
lixj1991
时间:
2015-9-9 14:37
楼上的说的非常对,
char *oldstr = "fengjie";
oldstr其实是一个字符串的指针,它指向一段内容为fengjie的内存空间。
因此,oldstr[0]这样的格式是不对的。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2