gpt4 book ai didi

c++ - ']' 标记之前的预期表达式? C

转载 作者:行者123 更新时间:2023-11-30 21:43:29 25 4
gpt4 key购买 nike

  if(!saveItems(item[], DATAFILE, NoOfRecs))

错误是:

Expected expression before ']' token

最佳答案

您尚未指定要尝试传递给函数的数组 item 的哪个元素。

item[] 没有任何意义。它没有任何值(value)。您必须在括号中输入一个数字。该数字就是数组的元素。数组的每个元素都有自己的值。

发生相同错误的损坏代码示例:

#include <stdio.h>

int main(void)
{
int my_array[3] = {1, 2, 3};
my_array[] = 1; // ERROR HERE!
return 0;
}

如果你尝试编译这个,你会得到这个:

1.c: In function ‘main’:
1.c:6:11: error: expected expression before ‘]’ token

因为我没有告诉 my_array 的哪个元素我想要将 1 分配给。我想将其分配给第一个元素 (my_array[0])、第二个元素 (my_array[1]) 还是第三个元素 ( my_array[2])?编译器不知道。你必须告诉它。

如果item是一个标量(不是数组),去掉[],它不应该在那里。

如果您尝试将整个数组作为参数传递,即使传递的是数组,也不要使用括号。如果您想将整个数组作为参数传递,请执行以下操作:if(!saveItems(item, DATAFILE, NoOfRecs))

关于c++ - ']' 标记之前的预期表达式? C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43336172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com