你好我必须使用结构数组做一个程序..我必须在函数中初始化它。下面我正在尝试,但我的原型不断出现错误"预期的主要表达" ..我已经按照教程但但无法弄清楚我做错了请帮忙。我不能使用指针或向量..只是基本的东西,谢谢你的时间
struct gameCases{
bool flag = false;
int casenum;
double value;
};
int initialize(gameCases cases); //prototype
--- main()
gameCases cases[26];
initialize(cases); //call
int initialize(gameCases cases) //definition
{
double values[26] = {.01, 1, 5, 10, 25, 50,
75, 100, 200, 300, 400, 500, 750, 1000,
5000, 10000 , 25000, 50000, 75000, 100000,
200000 , 300000, 400000, 500000,
1000000, 2000000};
for (int i = 0; i < 26; i++)
{
array[i].value = values[i];
}
}
答案 0 :(得分:1)
声明像
这样的函数int initialize( gameCases *array, size_t n );
并将其称为
initialize( cases, 26 );
或者您可以通过引用传递数组。例如
int initialize( gameCases ( &cases )[26] );
考虑到该函数被声明为具有返回类型int但它实际上不返回任何内容。
答案 1 :(得分:0)
int initialize(gameCases cases[26]); //prototype
int initialize(gameCases cases[26]) //definition
{
double values[26] = {.01, 1, 5, 10, 25, 50,
75, 100, 200, 300, 400, 500, 750, 1000,
5000, 10000 , 25000, 50000, 75000, 100000,
200000 , 300000, 400000, 500000,
1000000, 2000000};
for (int i = 0; i < 26; i++)
{
cases[i].value = values[i];
}
}
并致电:
initialize(cases);