• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

将一个变量强制转换成void类型是什么意思

hehung 2018-07-12 浏览量:1911

比如int a = 5;

(void)a;是什么意思?


在单片机的代码中遇到过这样的代码

1 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 没有什么实际意义,只是避免程序中未使用的变量在编译时出现警告。

    • 发布于 2018-07-12
    • 举报
    • 评论 0
    • 2
    • 0

其他答案 数量:16
  • 其实这样的语句对变量本身没有任何影响,只是表示已经使用过这个变量了,以减少编译期警告。
    • 发布于2018-07-12
    • 举报
    • 评论 0
    • 2
    • 0

  • 对代码没啥影响,有没有都行。

    只是把一个类型转为另一个类型,c99 标准里面有说 void 用法,可以看看

    • 发布于2018-07-12
    • 举报
    • 评论 0
    • 2
    • 0

  • 没有具体意义,也不给谁赋值
    • 发布于2018-07-12
    • 举报
    • 评论 0
    • 1
    • 0

  • 在我调试蓝牙4.0CC2541的串口程序中就有这个用法,就是说你函数调用的时候,只有API接口,参数是固定的,但是你在函数内部具体操作的时候,你可能不会用到一些变量参数,加个VOID 避免编译警告,不加void会报错或者警告。
    • 发布于2018-07-12
    • 举报
    • 评论 0
    • 1
    • 0

  • 各种编译器中经常会有这种操作,通常是在函数的参数没有被使用时,使用这个操作就可以让编译器不再产生未使用的变量这个警告了。有的时候在函数中定义了变量,用来保存调用其他函数的返回值,这个返回值如果没有进行判断,编译时经常会有未使用的变量这个警告,如果这个变量加一个"void ret;"操作,就会有警告了。
    • 发布于2018-07-13
    • 举报
    • 评论 0
    • 1
    • 0

  • 应该是避免没有使用的变量编译的时候会有警告 没有什么实际用途
    • 发布于2018-07-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 一般是为了适应API接口而已,减少警告
    • 发布于2018-07-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 没见过这种用法,我只见过指针定义成void*的,即万用指针,可以指向任何类型。

    • 发布于2018-07-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 括号里的void是没有什么实际意义的,简单的程序直接去掉也行,加个void可以避免程序中未使用的变量在编译是出现警告,所以大神们一般都会加上void。
    • 发布于2018-07-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 这样的操作对程序上来说是没有意义的。
    只是告诉编译器,这个变量我已经使用过了。不要提示变量未使用的警告。如果你使用PIC的芯片的话,你会明白了。PIC最新版的那个开发环境和编译器在写程序的时候,如果一个变量在你的程序中的作用仅仅是一个单一赋值,之后就没什么用过的时候,编译器就提示你,该变量没有实际意义。但是你在该变量的之前加上(void)时,编译器就不回报警告了。
    • 发布于2018-07-15
    • 举报
    • 评论 0
    • 0
    • 0

  • 强制类型转换,编译器一般都会警告,如果确定没有错误可以忽略
    • 发布于2018-07-23
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个是不能这样使用的,数据类型不能转换成空类型
    • 发布于2018-07-24
    • 举报
    • 评论 0
    • 0
    • 0

  • c语言有一些类型不能直接强制转换,需要用void做中转,先转换成void再转换到需要的类型
    • 发布于2018-07-25
    • 举报
    • 评论 0
    • 0
    • 0

  • 不可以这样写,因为不存在空类型的变量。
    • 发布于2018-07-30
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

将一个变量强制转换成void类型是什么意思