关键词搜索

源码搜索 ×
×

关于void a;和void *a;

发布2014-10-09浏览8978次

详情内容

       看程序:

  1. int main()
  2. {
  3. void a;
  4. return 0;
  5. }
      编译错误。


  1. int main()
  2. {
  3. void *a;
  4. return 0;
  5. }
     编译运行正确。为什么呢? 因为C/C++不能定义通用类型的一般变量(长度不确定), 但是可以定义通用类型的指针(指针长度确定)。


     

     然而, 上述程序有编译告警, 怎么消除呢?

  1. int main()
  2. {
  3. void *a;
  4. (void *)a;
  5. return 0;
  6. }
      这种用法在实际开发中也会经常用到(主要是规避编译器警告)。当然, 下面这样也可以, 不过不太好:

  1. int main()
  2. {
  3. void *a;
  4. (void)a;
  5. return 0;
  6. }




相关技术文章

最新源码

下载排行榜

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载