使用下划线作为宏函数的参数
Usage of underscore as argument of a macro function
在C中,下划线作为宏参数是什么意思?
#define FUNC(_) VALUE
这是一个伪参数吗?它适合的用例的任何示例?
在这种情况下,代码可以读作:
FUNC
takes a single argument, but it doesn't care what it is. No matter what is passed in, VALUE
is the result.
单个 _
是 C 中的有效标识符,因此适合用作宏参数名称。
_
没有特殊含义,我想他们使用它是因为它看起来好像没有参数。
_
只是一个有效的标识符,因此宏需要一个参数,但它使宏定义看起来好像没有参数。
#define FUNC(ignoredParameter) VALUE
完全一样。
在C中,下划线作为宏参数是什么意思?
#define FUNC(_) VALUE
这是一个伪参数吗?它适合的用例的任何示例?
在这种情况下,代码可以读作:
FUNC
takes a single argument, but it doesn't care what it is. No matter what is passed in,VALUE
is the result.
单个 _
是 C 中的有效标识符,因此适合用作宏参数名称。
_
没有特殊含义,我想他们使用它是因为它看起来好像没有参数。
_
只是一个有效的标识符,因此宏需要一个参数,但它使宏定义看起来好像没有参数。
#define FUNC(ignoredParameter) VALUE
完全一样。