更多“设有定义:char p[]={1,2,3),*q=p;,以下不能计算出一个char型数据所占字节数的表达式是( )。A.size ”相关问题
  • 第1题:

    有以下程序includemain(){ char*p,*q;p=(char *)malloc(sizeof(char)*20);q=p;scanf(

    有以下程序 #include<stdlib.h> main() { char*p,*q; p=(char *)malloc(sizeof(char)*20);q=p; scanf(“%s%s”,p,q);printf(“%s%s\n”,p,q); } 若从键盘输入:abc def<回车>,则输出结果是

    A.def def

    B.abc def

    C.abc d

    D.d d


    正确答案:A
    解析:本题首先定义两个字符型指针变量p和q,通过malloc()函数申请 20个字符的存储空间,并把它的首地址赋给p,再把p的值赋给q,p和q指向同一个存储区。在scanf()语句中读取字符串到p和q指向的字符串,先把“abc”读取到P指向的存储区中,第一个空格是结束标记,第二个空格是分隔符,再把“def”存放到q指向的存储区,把原先的内容覆盖。所以p和q指向的存储区中内容是“def”,所以最后输出为def,def。

  • 第2题:

    设有定义:char p E]={’1’,‘2’,’3’},*q=p;,以下不能计算出一个char型数据所占字节数的表达式是( )。

    A.sizeof(p)

    B.sizeof(char)

    C.sizeof(*q)

    D.sizeof(p[0])


    正确答案:A
    根据题目中的定义可以知道sizeof(p),计算的是数组P中所有元素所占用的字节数,而不是ch”型数据所占字节数。

  • 第3题:

    设有定义:char p[]={‘1’,’2’,’3’},*q=p;以下不能计算出一个char型数据所占字节数的表达式是( )。

    A.sizeof(p)

    B.sizeof(char)

    C.sizeof(*q)

    D.sizeof(p[0])


    正确答案:A

  • 第4题:

    设有定义:,以下不能计算出一"/Pchar型数据所占字节数的表达式是( )。A.AB.BSXB

    设有定义:,以下不能计算出一"/Pchar型数据所占字节数的表达式是( )。

    A.A

    B.B

    C.C

    D.D


    正确答案:A
    根据题目中的定义可以知道sizeof(p),计算的是数组p中所有元素所占用的字节数,而不是char型数据所占字节数。

  • 第5题:

    设有定义:char p[]={‘1’,‘2’,‘3’,},*q=p;,以下不能计算出一个char型数据所占字节数的表达式是______。

    A.sizeof(p)

    B.sizeof(char)

    C.sizeof(*q)

    D.sizeof(p[0])


    正确答案:A
    解析: 本题考查的重点是sizeof()的运用。sizeof用于返回其操作数(变量、类型)相对应数据类型的字节数。因此,选项A是错误的,因为p是一个地址,它既不是一个数据类型,也不是数据变量。