问题 单项选择题

若程序中已包含头文件stdio.h,以下选项能正确运用指针变量的程序段是( )。

A.int *i=NULL;
scanf("%d",i);

B.float *f=NULL;
*f=10.5;

C.char t='m',*c;
*c=&t;

D.long *L;
L='\0';

答案

参考答案:D

解析: 本题考查指针变量的运用。选项A)、B)的指针定义错误,空指针NULL是对指针变量赋。值而得到的。例如:
#define NULL 0
int *p=NULL;
对指针变量赋。值和不赋值的时候意义是不同的:指针变量未赋值时,它是指向任意不确定的存储单元,不能使用,否则将造成意外错误;而指针变量赋0值后,则可以使用,只是它不指向具体的变量而已。选项C)中的 *c=&t;错误,因为&t是地址,而*c是值。选项D)是让指针 L指向字符串的末尾,即字符串的结束符。

单项选择题
单项选择题