Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在函数C中传递并修改字符数组[][]_C_Arrays_String - Fatal编程技术网

在函数C中传递并修改字符数组[][]

在函数C中传递并修改字符数组[][],c,arrays,string,C,Arrays,String,我有一个char数组[],我想在void函数中使用它并修改一些值 char teams[MAX_TEAMS][MAX_NAME_LENGTH + 1] = { "Olympiakos", "P.A.O.K.", "Panathinaikos", "Panionios"}; (MAX_TEAMS和MAX_NAME_LENGTH是程序开始时定义的整数。 我将使用一个void函数来修改数组。我必须如何定义函数,如何从main传递数组?如何在函数中使用它 void print_teams(char [

我有一个char数组[],我想在void函数中使用它并修改一些值

char teams[MAX_TEAMS][MAX_NAME_LENGTH + 1] = { "Olympiakos", "P.A.O.K.", "Panathinaikos", "Panionios"};
(MAX_TEAMS和MAX_NAME_LENGTH是程序开始时定义的整数。 我将使用一个void函数来修改数组。我必须如何定义函数,如何从main传递数组?如何在函数中使用它

void print_teams(char [][]);  (?????)

int main(){
    char teams[MAX_TEAMS][MAX_NAME_LENGTH + 1] = { "Olympiakos", "P.A.O.K.", "Panathinaikos", "Panionios"};
    print_teams(teams);
}

void print_teams(char teams[MAX_TEAMS][MAX_NAME_LENGTH+1]){
     strcpy(teams[0], "Milan FC");  
}

I am looking for a way of declaration so that any modifies inside the void function to be saved at array teams.
Thanks in advance!

函数
teams[0]
中有一个数组。您不能分配给数组,只能复制到该数组:

还要注意双引号的使用

最后,对于函数原型,只需复制函数定义的声明。

最好的方法是:

void print_teams(char [][MAX_COL_SIZE]);
您可以在以下链接中找到更多信息:


使用strcpy(球队[0],“皇家马德里”);而不是使用“=”

strcpy(球队[0],“米兰俱乐部”);
1)不要垃圾标签。C++不是C语言!2) 你的C语言书说你不懂什么?我们不是辅导服务,声明函数和如何使用参数将在每一本C语言书中解释。可以使用strcpy…但是函数的传递如何…??对于标签,我们感到抱歉…
void print_teams(char teams[MAX_teams][MAX_NAME_LENGTH+1])换句话说,只需复制函数定义并在末尾加一个分号。我需要有关函数void声明的帮助…..它不是“void print_teams(char[][]);”这与OP得到的完全相同。事实上,他的代码更好,因为如果您使用静态分析工具检查代码,它可以提高类型安全性。仍然不是我想要的…我想要进入函数的数组“保存”函数内部的更改。它将保存更改。请检查它。您已正确调用它,请执行它并享受
void print_teams(char [][MAX_COL_SIZE]);