2010-10-14 45 views
1

我是目标c的初学者,我正在为iPhone创建一个纸牌游戏,并且我遇到了一个功能问题:我创建了一副纸牌,将其打乱并现在我需要在甲板上4手分裂(为4人)Objective-C中的拆分功能(纸牌游戏)

这里是我的功能:

-(void) split(int i1, int i2, int i3) 
{ 
    NSMutableArray *list1; 
    NSMutableArray *list2; 
    NSMutableArray *list3; 
    NSMutableArray *list4; 

    int a =0; 

    for(int i =0;i<i1;i++){ 
     list1 [i]=cards[a]; 
     a++; 
    } 
    for(int i =0;i<i1;i++){ 
     list2 [i]=cards[a]; 
     a++; 
    } 
    for(int i =0;i<i1;i++){ 
     list3 [i]=cards[a]; 
     a++; 
    } 
    for(int i =0;i<i1;i++){ 
     list4 [i]=cards[a]; 
     a++; 
    } 


    for(int i =i1;i<i1+i2;i++){ 
     list1 [i]=cards[a]; 
     a++; 
    } 
    for(int i =i1;i<i1+i2;i++){ 
     list2 [i]=cards[a]; 
     a++; 
    } 
    for(int i =i1;i<i1+i2;i++){ 
     list3 [i]=cards[a]; 
     a++; 
    } 
    for(int i =i1;i<i1+i2;i++){ 
     list4 [i]=cards[a]; 
     a++; 
    } 


    for(int i =i1+i2;i<i1+i2=i3;i++){ 
     list1 [i]=cards[a]; 
     a++; 
    } 
    for(int i =i1+i2;i<i1+i2=i3;i++){ 
     list2 [i]=cards[a]; 
     a++; 
    } 
    for(int i =i1+i2;i<i1+i2=i3;i++){ 
     list3 [i]=cards[a]; 
     a++; 
    } 
    for(int i =i1+i2;i<i1+i2=i3;i++){ 
     list4 [i]=cards[a]; 
     a++; 
    } 

    } 

我觉得我没有申报很好 谁能告诉我,如果你有一个理念? (我知道这个问题很容易让你的家伙,但现在我阻止)

+0

你的代码是否被编译?创建一系列(for int i = 0; ...)循环(redeclaring变量)通常是不允许的 – KevinDTimm 2010-10-14 13:17:27

回答

3
- (void) split:(int)i1 a:(int)i2 a:(int) i3 {} 

尝试使用Google的一些教程/示例,ObjC语法。

NSMutableArray数组不像C-Array。 你必须分配/初始化它们并使用NSMutableArray方法(请参阅文档)

+0

坦克为你的(快速)回答:) – ciwol 2010-10-14 13:40:01