【发布时间】:2012-10-29 17:53:49
【问题描述】:
为什么这段代码不起作用? (这不是实际代码,而是简化版)
#include <stdio.h>
#define NUMBER 5
int function( int NUMBER );
int main (void)
{
function( NUMBER );
return 0;
}
int function( int NUMBER )
{
printf("Hi %d\n", NUMBER);
return 0;
}
【问题讨论】:
-
int function( int 5 );- 什么? -
对不起,函数内部的 %d 丢失了
-
那句话有什么意义呢?毕竟,你为什么在这里使用这个
#define子句?如果未指定任何值,您是否尝试创建与5一起使用的函数? -
我想传递 NUMBER (5) 作为参数,在函数中打印出来。
-
@jotape:你在
main中成功地做到了。但是,函数不会预测它们的输入,它们将参数作为变量。这样你也可以写function(10)、function(100)和function(some_other_variable)。函数是可重用的代码片段。
标签: c function c-preprocessor