c++ - 函数参数中的结构 C++ 数组根本不起作用

标签 c++ arrays function struct structure

你好,我必须使用一个结构数组来编写一个程序。我必须在一个函数中对其进行初始化。下面我正在尝试,但我的原型(prototype)不断出现错误“Expected primary expression”。我已经按照教程进行操作但无法弄清楚我做错了什么请帮忙。我不能使用指针或 vector ..只是基本的东西谢谢你的时间

struct gameCases{

bool flag = false;
int casenum;
double value;
};
 int initialize(gameCases cases);  //prototype

--- 主要()

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];
}
}

最佳答案

像这样声明函数

int initialize( gameCases *array, size_t n );  

并称它为

initialize( cases, 26 );    

或者您可以通过引用传递数组。例如

int initialize( gameCases ( &cases )[26] );

考虑到该函数被声明为具有返回类型 int,但实际上它不返回任何内容。

关于c++ - 函数参数中的结构 C++ 数组根本不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26741558/

相关文章:

ruby - 使用两个数组创建哈希

php - 搜索是否在 PHP 中的另一个数组中找到数组的任何元素

function - powershell 中的美元符号、函数关键字和脚本 block

function - 如何在golang中返回一个空值?

c++ - 不使用 C++11 实现函数对象绑定(bind)

c++ - 瑞典字符无法正确比较

c++ - Building Boost - 找不到 windows.h

c++ - 隐式 move 方法是否始终保留基本数据?

c - 查找步骤以找到给定的索引值

c++ - 哪些运算符是为作用域枚举自动定义的?