我是C编程新手。我想当你输入类似#define Const 5000
这样的东西时,编译器只是在编译时用Const替换Const的每个实例。那是错的吗? 我尝试在我的代码中执行此操作,并且出现语法错误。为什么我不能这样做?你可以在if语句中使用#defined值(在C程序中)?
#define STEPS_PER_REV 12345
... in some function
if(CurrentPosition >= STEPS_PER_REV)
{
// do some stuff here
}
编译器抱怨if语句有一个语法错误,它没有提供任何细节。
什么是错误? – nc3b 2010-04-30 20:16:18
他们在同一个文件吗? – Anycorn 2010-04-30 20:16:57
错误说“语法错误:令牌 - >';' ;第31列“,是的,他们在同一个文件。奇怪的是,我可以在赋值语句中使用它CURRENT_POSITION = STEPS_PER_REV,但只是不在IF语句中 – PICyourBrain 2010-04-30 20:18:55