我正在用C语言编写一个单词查找程序,它会接收用户输入,然后选择其中一个全局数组中的单词来生成单词查找。当我仅使用其中一个全局数组时,它可以正常运行,但是在进行选择时就出现问题,我想将类别数组的内容复制到新数组中(取决于用户的选择),然后将其与单词查找一起使用。目前程序在输入选项后崩溃了,以下是我的代码:
这些数组目前是全局声明的,看起来像这样:
switch(choice)
{
case 1: choseArray(newArray, massEffect);
break;
case 2: choseArray(newArray, fallout3);
break;
case 3: choseArray(newArray, elderScrolls);
break;
case 4: choseArray(newArray, gameOfThrones);
break;
case 5: choseArray(newArray, breakingBad);
break;
default: printf("Enter a valid option!");
}
void choseArray(char** newArray, char** category)
{
int i;
for(i=0;i<6;i++)
{
strcpy(newArray[i], category[i]);
}
}
这些数组目前是全局声明的,看起来像这样:
char gameOfThrones[6][250] = {"KINGSLANDING", "TYRIAN", "STARK", "LANISTERS", "WESTEROS", "WINTERFELL"};
char breakingBad[6][250] = {"JESSE", "WALT", "HEISENBERG", "SAUL", "GUSTAVO", "BREAKFAST"};
char newArray[6][250];
void choseArray(char newArray[6][250], ....
? - moffeltjeswitch
语句的作用域中提供适用于newArray
的声明,这非常重要。 - John Bollinger