我创建了这个函数,用于扫描2D数组中的垂直对,其中row = 20,column = 30.为了阐明从A到Z的随机字符存储在每个数组的元素中。
char function3 (char randchar_array[ROW] [COLUMN])
{
int r = 0 ;
int c = 0 ;
int vertpairs = 0;
for (r = 0; r < ROW ; r++)
{
for (c = 0; c < COLUMN -1; c++)
{
{
if(randchar_array[r][c] == randchar_array[r+1][c])
vertpairs++;
}
}
}
return (vertpairs);
}
我的问题是:对于(c = 0; c&lt; COLUMN -1; c ++),第2个语句是否需要-1(
)。答案 0 :(得分:3)
不,从代码(垂直比较)来看,似乎- 1
应该在外环上。
现在它将在randchar_array[ROW - 1 + 1][c]
进行比较,这是超出范围的,并给出了未定义的行为。