2011-11-11 110 views
0

我有一个在我的autorelease池顶部的卷曲括号,由于某种原因,它正在列出一个错误预期的标识符或'('。我不知道这是什么意思我一直在努力修复它,我是一个计算机科学专业,在开始我的课程之前,我试图自学一些Steve Kochan的书中的一些客观的C语言,任何帮助都会很棒!谢谢!(代码如下所示)错误与预期的标识符或'('

int main (int argc, char * argv[]); 
{ 

    autoreleasepool; 
    { 
     Fraction *myFraction; 

     //Create an instance of a Fraction 

     myFraction = [Fraction alloc]; 
     myFraction = [myFraction init]; 

     // Set fraction to 1/3 

     [myFraction setNumerator: 1]; 
     [myFraction setDenominator: 3]; 

     // Display the fraction using the print method 
     NSLog (" The value of myFraction is:"); 
     [myFraction print]; 
    } 
    return 0; 
} 

回答

3

我想你错过一个字。

尝试@autoreleasepool {那里。

(添加@和删除分号)

3

反思,你发布你的分号

int main (int argc, char * argv[]); { 

应该

int main (int argc, char * argv[]) { 

autoreleasepool; 

应该

@autoreleasepool 
+0

这是愚蠢的分号!我不认为它应该在那里,但我只是在那个时候尝试的东西,我知道@应该在那里我修正了这一点。非常感谢!我被困了一段时间! – StormsEdge

+0

不客气:)。但是,如果这回答了您的问题:请使用左侧的勾号将此答案标记为“接受的答案”。 – vstrien

0

而且

NSLog (" The value of myFraction is:"); 

应该

NSLog (@" The value of myFraction is:"); 
0
int main(int argc, char *argv[]) { 
    @autoreleasepool { 
     Fraction *myFraction; 

     //Create an instance of a Fraction 
     myFraction = [[Fraction alloc] init]; 

     // Set fraction to 1/3 
     [myFraction setNumerator:1]; 
     [myFraction setDenominator:3]; 

     // Display the fraction using the print method 
     NSLog(@"The value of myFraction is:"); 
     [myFraction print]; 

     [myFraction release]; // you will read about this later in your book ;) 
    } 
    return 0; 
} 
+0

你不必再释放对象,因为他们添加了ARC哈哈 – StormsEdge