参考答案和解析
正确答案:D
解析:此题中说明了—个结构体类型struct TT的同时,定义了一个结构体变量CIN,结构体变量中的各成员在内存中按说明中的顺序依次排序。
更多“设有以下语句 typedef struct TT {char c; int a[4];}CIN; 则下面叙述中正 ”相关问题
  • 第1题:

    设有以下说明语句 typedef struct { int n; char ch[8]; }PER; 则下面叙述中正确的是

    A.PER是结构体变量名

    B.PER是结构体类型名

    C.typedef struct是结构体类型

    D.struct是结构体类型名


    正确答案:B
    解析: 本题中,typedef声明新的类型名PER来代替已有的类型名,PER代表上面指定的一个结构体类型,此时,也可以用PER来定义变量。

  • 第2题:

    设有以下语句:typedef struct TY{char C;int a{4 1;}CIN;

    则下面叙述中正确的是( )。

    A.CIN是struct Tr类型的变量

    B.TT是struct类型的变量

    C.可以用,lr定义结构体变量

    D.可以用CIN定义结构体变量


    正确答案:D
    本题考查typcdef重新声明一种结构体类型,其中CIN为结构体类型名,而不是结构体变量,所以D选项正确。

  • 第3题:

    设有以下语句: typedef struct TT {char c; int a[4];}CIN; 则下面叙述中正确的是( )。

    A.可以用TT定义结构体变量

    B.TT是struct类型的变量

    C.可以用CIN定义结构体变量

    D.CIN是struct TT类型的变量


    正确答案:C
    解析:将题目中的定义语句去掉前面的typedef和后面的CIN(分号保留),就是一条完整的结构体定义语句,其中struct是说明符,TT是结构体名,大括号里面的是结构体成员的定义。此时要声明该结构体变量时需要使用struct加结构体名一起来声明,structTT一起构成一个结构体类型,就好像字符类型char。若只去掉前面的typedef,就是一条结构体定义同时声明个结构体变量CIN的语句,因为CIN的前面部分是structTT的完整写法,可以看作是structTT。C语言允许用typedef说明一种新类型名,其语法格式为:typedef类型名标识符;以后就可以用该标识符来代替被说明的类型名了。因此,当前面存在typedef时,该语句就变成了给structTT的定义一个新的名称CIN。所以,此时的CIN是一个结构体类型,它相当于structTT,即可以和char一样单独用来声明该结构体变量,而TT只是一个结构体名,不能单独用来声明变量。所以,4个选项中C符合题意。

  • 第4题:

    设有以下语句

    typedef struct S

    { int g; char h; } T;

    则下面叙述中正确的是( )

    A.可用S定义结构体变量

    B.可以用T定义结构体变量

    C.S是struct类型的变量

    D.T是struct S类型的变量


    正确答案:A
    解析:S是自定义的一种结构体类型,T是S类型声明的一个变量。

  • 第5题:

    设有以下说明语句:则下面叙述中正确的是( )。

    A.PER是结构体变量名

    B.PER是结构体类型名

    C.typedef struct是结构体类型

    D.struct是结构体类型名


    正确答案:B
    本题中,typedef声明新的类型名PER来代替已有的类型名,PER代表上面指定的一个结构体类型,此时,也可以用PER来定义变量。