将变量类型转换为 void?
Type casting a variable to void?
最近遇到这段代码,一头雾水,这是干嘛的?
在 C 编程语言中,将变量类型转换为 void
数据类型是什么意思?这有什么作用?
如果执行类型转换或加法等表达式,并且结果没有立即分配给某个变量,则该结果会丢失。你为什么要那样做?好像是无用的表达方式。
代码示例:
int main(int argc, char *argv[])
{
/* void unused vars */
(void) argc;
(void) argv;
// more code here
return 0;
}
作者似乎没有使用这些变量,但为什么要将它们转换为 void
数据类型?您不妨将它们转换为 int
数据类型。
这是为了避免在某些编译器中出现未使用的变量警告。
还有一条 MISRA 规则规定必须使用所有函数参数。此方法是此规则的解决方法。
这可用于抑制未使用的变量编译警告。
最近遇到这段代码,一头雾水,这是干嘛的?
在 C 编程语言中,将变量类型转换为 void
数据类型是什么意思?这有什么作用?
如果执行类型转换或加法等表达式,并且结果没有立即分配给某个变量,则该结果会丢失。你为什么要那样做?好像是无用的表达方式。
代码示例:
int main(int argc, char *argv[])
{
/* void unused vars */
(void) argc;
(void) argv;
// more code here
return 0;
}
作者似乎没有使用这些变量,但为什么要将它们转换为 void
数据类型?您不妨将它们转换为 int
数据类型。
这是为了避免在某些编译器中出现未使用的变量警告。
还有一条 MISRA 规则规定必须使用所有函数参数。此方法是此规则的解决方法。
这可用于抑制未使用的变量编译警告。