получать ошибки-> Цель C - PullRequest
0 голосов
/ 20 мая 2011

Я новичок в Objective CI, пробовал пример программы с использованием макросов и получал ошибки.

#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 Ответ

3 голосов
/ 20 мая 2011

Похоже, вам не хватает ) в строке NSLog (строка 8).

Кроме того, я не уверен, что вам нужен последний \ в этой строке, так как макрос не переносится в третью строку.

Наконец, я не думаю, что вам нужно либо ; в этой строке, так и в сочетании с точкой с запятой, когда вы вызываете макрос в строке 15, в результате получается пустой оператор (хотя это не должно быть вредно) ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...