若有如下定义和语句 typedef struct { int n; double dt; }IANDF,*PIF; PIF p=(PIF)malloc(sizeof(IANDF)); 则下述说法中正确

admin2018-03-27  13

问题 若有如下定义和语句
    typedef struct
    {
    int n;
    double dt;
    }IANDF,*PIF;
    PIF p=(PIF)malloc(sizeof(IANDF));
    则下述说法中正确的是(    )。

选项 A、指针变量p指向结构体存储单元的首地址
B、指针变量p指向了IANDF
C、IANDF与PIF都有各自的存储单元
D、IANDF和PIF都可以作为结构体变量名使用

答案A

解析 在C语言中,使用typedef关键字为结构体起一个别名,IANDF、*PIF即为该结构体的别名,*PIF为指针类型。指针变量p为结构体指针,指向结构体存储单元的首地址,选项A正确;指针p为结构体指针变量,指向结构体,不是指向IANDF,选项B错误;IANDF、*PIF只是结构体的别名,没有自己的存储单元,选项C错误;IANDF、*PIF为结构体别名,相当于类型名,不能作为结构体变量名使用,选项D错误;本题答案为A。
转载请注明原文地址:https://kaotiyun.com/show/2qID777K
0

随机试题
最新回复(0)