得到错误 - >目标C.

时间:2011-05-20 07:33:15

标签: objective-c

我是Objective C.的新手。我正在尝试使用宏并获取错误的示例程序。

#import <Foundation/Foundation.h>

#define HELLO_WORLD @"Hello World"

#define a(x,y) ((x)+(y))

#define PRINTMAC(x,y)\
NSLog(@"%d",a((x),(y));\

int main (int argc, const char * argv[]) {
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

    // insert code here...
    //NSLog(@"%d",add(10,20));
    PRINTMAC(13,72);  //error:
    [pool drain];
    return 0;
} //error:

错误:预期';'在'}'标记之前

1 个答案:

答案 0 :(得分:3)

您似乎在)行(第8行)上遗漏了NSLog

此外,我不确定您是否需要该行的最终\,因为该宏未被转移到第三行。

最后,我认为您不需要该行上的;,当您在第15行调用宏时结合使用分号会导致空语句(不应该是有害的) ,但是)。