在Objective-C中使用带有字符数组和字符串值的strcpy时出现问题

在Objective-C中使用带有字符数组和字符串值的strcpy时出现问题,objective-c,arrays,string,character,strcpy,Objective C,Arrays,String,Character,Strcpy,我正在学习Objective-C课程,被告知“创建一个名为names的字符数组。用五个名字填充数组。使用strcpy命令将字符串值复制到数组中。” 我将我的解决方案编码为这个,但它不断给我错误。我已经用这段代码玩了35分钟了,但仍然不能让它运行或者没有错误 以下是我根据上述说明创建的代码: char names[24]; strcpy (names, "Jeff", "Steve", "Stan", "Mike", "Travis"); 我不明白为什么它不能正常工作,因为我已经用24分

我正在学习Objective-C课程,被告知“创建一个名为names的字符数组。用五个名字填充数组。使用strcpy命令将字符串值复制到数组中。”

我将我的解决方案编码为这个,但它不断给我错误。我已经用这段代码玩了35分钟了,但仍然不能让它运行或者没有错误

以下是我根据上述说明创建的代码:

  char names[24];
  strcpy (names, "Jeff", "Steve", "Stan", "Mike", "Travis");
我不明白为什么它不能正常工作,因为我已经用24分配了正确数量的char索引,并且觉得我也正确地使用了strcpy函数

以下是我在xcode中遇到的错误:

  • 期待“;”表达后——想去的地方;后strcpy
  • 提供的参数太多,无法像宏调用那样运行
  • 额外的“)”之前““-要我用引号替换“)”

  • 非常感谢您的帮助。

    strcpy
    只接受两个参数

    您应该这样做:
    strcpy(name,“Jeff”);


    我想你想在一个数组中存储5个名字。为此,你需要创建一个2D数组

    char names[5][24];
    
    然后使用:

    strcpy (names[0], "Jeff");        
    strcpy (names[1], "Steve");
    ...//etc
    

    这不是对的正确使用。应该有一个编译器错误,告诉您strcpy需要2个参数,而不是6个。这是Objective-C类的C部分吗?它没有使用任何Objective-C语言功能。谢谢!这非常有效。有没有其他方法可以在没有2D数组的情况下执行此操作,或者这是唯一的方法?我觉得很奇怪在给我这个问题之前,我的老师没有上2d数组的课。没有其他方法。因为你的要求是填充5个名称。名称表示多个字符(即数组!!!),5个名称表示数组的数组,因此是2d数组。