请问这个宏是什么意思 #define NOTUSED(v) ((void) v)?

就像它的名字一样,这个定义告诉compiler忽略掉某个value。
比如NOTUSED(x) 会被替换成 ((void) x). (x必须被定义过)。
这种void用法的目的是不让compiler出warning。
比如你写了一个函数有三个参数a, b, c,但是你只用了a, b。这时候compiler可能出warning说你少用了参数c。如果你在前面加上NOTUSED(c)的话就不会出warning了。

作者:言覃天
链接:https://www.zhihu.com/question/22036419/answer/20091798
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

posted @ 2021-11-09 08:56  sgggr  阅读(115)  评论(0编辑  收藏  举报