gpt4 book ai didi

c++ - 用一个循环遍历二维数组

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

我有一个二维数组,定义为 double mat[6][6]。为了让 gcc 向量化 for 我需要使用一个循环。我有以下循环:

double* p = &mat[0][0];
for (int i = 0; i < 36; i++)
sum += p[i] + 48;

我收到来自 gcc 的警告:数组下标超出数组边界。为什么?

最佳答案

不直接回答您的问题,但作为替代方案,您可以使用 moddiv 确定各个维度的索引(只要它是二维的),就像这样:

int height = 6;
int width = 6;

for (int i = 0; i < 36; i++)
{
sum = mat[i / height][i % width] + 48;
}

关于c++ - 用一个循环遍历二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49236138/

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