根据全局整数定义整数



我正在尝试为卷积过滤器制作一个 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);

这应该行得通。

最新更新