c/c++中define的问题 急急急

来源:百度知道 编辑:UC知道 时间:2024/06/13 10:20:00
在thinking in c++中 有这样一段
#denfine PR(STR,EXPR)\
cout<<STR;printBinary(EXPR);cout<<endl;

请问这个怎么编译不成功 不知道是错在哪里?这里printBinary(EXPR);是个一个已经定义的函数
还有 那个str和expr都没有指定类型 这都不要紧吗

书上写成
#denfine PR(STR,EXPR)\
cout<<STR;printBinary(EXPR);cout<<endl;
这样的形式是代码太长了,一行不够写,所以在断行处写了个\ ,这样断行有些编译器支持,有些不支持。vc6.0是支持的。如果不支持的话,你要是想编译就把\符号去掉,两行并成一行就可以了
也就是:
#denfine PR(STR,EXPR) cout<<STR;printBinary(EXPR);cout<<endl;

还有,你把define写成denfine了(这个是主要原因)。