问题
单项选择题
下列程序段中,不能正确赋值的是
A.char * p,ch; p=&ch; scanf("%c,&p")
B.char * p; p=(char*)malloc(1)scanf("%c",;
C.char *p*p=getchar( );
D.char *p,ch; p=&ch; *p=getchar( );
答案
参考答案:C
解析: 本题考查了字符的输入函数getchar和利用scanf函数输入一个字符。用scanf输入字符时,格式说明字符应该为%c。本题选项C)因为指针 p没有赋初值,所以是一个不定值,不能直接将getchar读入的字符赋给指针p所指向的字符,所以选项C错误。