coco1312 2015-11-28 15:37 采纳率: 0%
浏览 2759
已采纳

C语言int *p,*q=NULL,k=1;p=&k;以下选项中错误的赋值是

若有下面定义和赋值:int *p,*q=NULL,k=1;p=&k;以下选项中错误的赋值是()
A.*q=0;B.*p=k+1;C.p=0;D.q='\0';
====参考答案是C,求教详细解释??

  • 写回答

6条回答 默认 最新

  • CDSN_SB_SYY 2015-11-30 09:04
    关注

    答案是A;
    理由:p指向k,*q=NULL,q指向NULL
    *q没有分配空间所以不能赋值;A错误;
    *p指向K,即k=k+1; 正确
    p=0;将保存地址清零;允许赋值;正确
    q是指针,定义是已经分配指针的4字节空间,相当于q=NULL;正确

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 输入的char字符转为int类型,不是对应的ascall码,如何才能使之转换为对应ascall码?或者使输入的char字符可以正常与其他字符比较?
  • ¥15 解决websocket跟c#客户端通信
  • ¥30 Python调用dll文件输出Nan重置dll状态
  • ¥15 浮动div的高度控制问题。
  • ¥66 换电脑后应用程序报错
  • ¥50 array数据同步问题
  • ¥15 pic16F877a单片机的外部触发中断程序仿真失效
  • ¥15 Matlab插值拟合差分微分规划图论
  • ¥15 keil5 target not created
  • ¥15 C/C++数据与算法请教