我正在尝试为卷积过滤器制作一个 5x5 2d 数组,我想要定义中存储的所有值的总和。
int foo [5][5] = {
1, 1, 1, 1, 1,
1, 1, 1, 1, 1,
1, 1, 1, 1, 1,
1, 1, 1, 1, 1,
1, 1, 1, 1, 1
};
define bar = /* sum of all the values in foo */
这可能吗?
您可以使用
const
变量。
我会创建一个函数来计算值并返回总和。像这样:
int matrix_value_count(const int *matrix_ptr, int row_number, int col_number) {
int sum = 0;
for(int i = 0; i < row_number * col_number; i++)
sum = sum + *(matrix_ptr + i);
return sum;
}
当然,最好使用template
但我认为这有点太多了。
要执行此函数,请将代码的最后一行更改为:
const int bar = matrix_value_count(foo, 5, 5);
这应该行得通。