参考答案和解析
正确答案:C
解析:本题考查C语言编程的基本知识。本题变量datal定义为联合结构。联合中所有数据项占有相同的内存空间。联合体所占的内存存储空间为所包含数据项所占的内存存储空间的最大值。
更多“已知有变量datal定义如下: union data { int i; char ch; float f; }data ”相关问题
  • 第1题:

    变量W_data定义如下:union data_node{float ff'int n;char ch;}W_data;则变量W_data所占的内存存储空间可表示为______。

    A.sizeof(int)
    B.sizeof(char)
    C.sizeof(float)
    D.sizeof(int)+sizeof(char)+sizeof(float)

    答案:C
    解析:
    本题考查C语言编程的基本知识。本题中变量W_data类型为联合。联合中所有数据项占有相同的内存空间。联合体所占的内存存储空间为所包含数据项所占的内存存储空间的最大值。

  • 第2题:

    已知有如下共用体变量data,则data所占的字节数是()。 union { char a[4]; int b[3]; long c[2]; }data;

    A.9

    B.12

    C.8

    D.24


    ar ch;

  • 第3题:

    假定已定义浮点型变量data,以二进制方式把data的值写入输出文件流对象outfile中去,正确的语句是()。

    A.outfile.write((float *) &data, sizeof(float));

    B.outfile.write((float *) &data, data);

    C.outfile.write((char *) &data, sizeof(float));

    D.outfile.write((char *) &data, data);


    C

  • 第4题:

    5、假定已定义浮点型变量data,以二进制方式把data的值写入输出文件流对象outfile中去,正确的语句是()。

    A.outfile.write((float *) &data, sizeof(float));

    B.outfile.write((float *) &data, data);

    C.outfile.write((char *) &data, sizeof(float));

    D.outfile.write((char *) &data, data);


    C

  • 第5题:

    假定变量i,f的数据类型分别是int、float。已知i=12345,f=1.2345e3,则在一个32位机器中执行如下表达式,结果为假的是

    A.i==(int)(float)i

    B.i==(int)(double)i

    C.f==(float)(int)f

    D.f==(float)(double)f


    B