【发布时间】:2015-06-06 06:43:58
【问题描述】:
我正在用 C 语言编写一个单词搜索程序,它接受用户输入,然后选择一个全局单词数组并使用它来生成单词搜索。当我只使用全局数组之一但没有选择时,它可以工作,我想根据用户的选择将类别数组的内容复制到可与单词搜索一起使用的 newArray 中。程序在此时输入一个选项后崩溃,这就是我所拥有的。
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], ....? -
您没有提交适用于
switch声明范围的newArray声明,这是非常相关的。