A-A+

设有定义:char*C;以下选项中能够使C正确指向一个字符串的是()。A.char str(

2022-08-05 23:55:32 问答库 阅读 173 次

问题详情

设有定义:char*C;以下选项中能够使C正确指向一个字符串的是()。
A.char str()=”string”;C=str;
B.scanf(”%s”,C.;
C.c=getchar();
D.*c=”strin9”; 请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:A
A选项为正确用法,先将字符串存于字符数组中,然后将数组名赋给字符指针(数组名代表数组首地址,定义数组时为其分配确定地址)。C选项错误,getchar()函数只能输入一个字符给字符型变量,而不是字符指针。B选项和D选项有类似的错误,两个选项并无语法错误,但运行时可能会出现问题。因为在B选项和D选项中,字符指针没有被赋值,是个不确定的值,指向一个不确定的内存区域,这个区域可能存放有用的指令或数据。在这个不确定的区域重新存放字符串,可能会发生无法预知的错误。因此A选项正确。

考点:字符串,定义