C学生赋值,数组值不传递给函数

C学生赋值,数组值不传递给函数,c,arrays,C,Arrays,我在将数组传递给函数时遇到了一个问题。我将它传递给一个函数并更新它,然后在main中打印值,它们打印得很好。我将它们传递给另一个函数进行求值,但由于某些原因,这些值无法实现。我试着将它们作为constchar和constint传递,或者只是作为char和int传递。它们仍然不起作用 我的家庭作业落后了,这件事让我不知所措。你能看出我做错了什么吗?我在Ubuntu上用GCC编译。正如我所说的,main中的同一个循环产生正确的结果,并且我正在以一种在早期设置值的函数中工作良好的方式将数组传递给函数

我在将数组传递给函数时遇到了一个问题。我将它传递给一个函数并更新它,然后在main中打印值,它们打印得很好。我将它们传递给另一个函数进行求值,但由于某些原因,这些值无法实现。我试着将它们作为constchar和constint传递,或者只是作为char和int传递。它们仍然不起作用

我的家庭作业落后了,这件事让我不知所措。你能看出我做错了什么吗?我在Ubuntu上用GCC编译。正如我所说的,main中的同一个循环产生正确的结果,并且我正在以一种在早期设置值的函数中工作良好的方式将数组传递给函数

大体上

evalGuesses(guessType, numberOfGuesses);
评估中

void evalGuesses(char guessType[], int numberOfGuesses)
{
int count;

for(count = 0; count < numberOfGuesses; count++);
{
    printf("\n** Eval: option %c", guessType[count]);
}
return;
} // end evalGuesses

去掉那个分号;在for的右括号后。您现在拥有的代码相当于以下代码:

...
for( count = 0; count < numberOfGuesses; count++ ){
    ;   // means "do nothing", empty-statement
}
{
    printf( ... );
}
...

虽然你似乎想要打印;得到循环,在这种情况下,你应该按照我一开始的建议去做。

去掉分号;在for的右括号后。您现在拥有的代码相当于以下代码:

...
for( count = 0; count < numberOfGuesses; count++ ){
    ;   // means "do nothing", empty-statement
}
{
    printf( ... );
}
...

虽然你似乎想要打印;得到循环,在这种情况下,您应该按照我在一开始时建议的那样做。

请向我们展示您完整的主功能…我怀疑您在代码方面有问题,您没有向我们展示。给出了一个将数组传递给函数的示例。谢谢,朋友们,但导致问题的原因是数组后面的分号。我觉得自己很愚蠢,直到我意识到我的眼睛并不是唯一掩盖它的人。从昨晚起我就一直在找-请向我们展示您完整的主功能…我怀疑您在没有向我们展示的代码中存在问题。给出了一个将数组传递给函数的示例。谢谢,朋友们,但导致问题的原因是数组后面的分号。我觉得自己很愚蠢,直到我意识到我的眼睛并不是唯一掩盖它的人。从昨晚起我就一直在找-哈哈!就这样!谢谢你,ThoAppelsin!我本应该抓住它的,但我的眼睛只是遮住了它。不知道它是怎么到那里的,但是非常感谢你抓住了它@大卫彼得哈维没问题,兄弟。加法:尽管如此,这让我想知道为什么这个相同的循环在main中工作,我要补充一点,因为当你到达printf计数时,你在循环中没有做任何事情,你的printf计数将索引数组末尾的一个元素。因此,您在单个printf中看到的垃圾是相同的循环,除了分号:-哈哈!就这样!谢谢你,ThoAppelsin!我本应该抓住它的,但我的眼睛只是遮住了它。不知道它是怎么到那里的,但是非常感谢你抓住了它@大卫彼得哈维没问题,兄弟。加法:尽管如此,这让我想知道为什么这个相同的循环在main中工作,我要补充一点,因为当你到达printf计数时,你在循环中没有做任何事情,你的printf计数将索引数组末尾的一个元素。因此,您在单个printf中看到的垃圾是相同的循环,除了分号:-