700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 为什么在把多维数组传递给函数时必须要指定除第一维之外的其他维

为什么在把多维数组传递给函数时必须要指定除第一维之外的其他维

时间:2020-12-01 19:19:38

相关推荐

为什么在把多维数组传递给函数时必须要指定除第一维之外的其他维

首先,我们需要看一张图:

我们可以看到,这一个 3*2 的二维数组,在第三行第一列的位置上存储着数字 5 ,如果我给一个函数输入这个二维数组作为参数,应该怎么做呢?

#include <stdio.h>void print(int test[][2]);int main(int argc, char *argv[]){int test_array[3][2] = {1, 2, 3, 4, 5, 6};print(test_array);return 0;}void print(int test[][2]){printf("test[2][1] = %d\n", test[2][0]);}

上面这段程序输出的是数字 5 。达到了我们想要的目的,那么为什么需要输入第二维呢?(在这个简单的例子中是第二维,更多维也是一样)

因为,你在编写程序的时候你知道一行有多少个元素,但是编译器并不知道一行有多少个元素,而且数组是一段连续的内存,所以,编译器并不知道几个元素并成为一行,也就是列数,所以,我们必须指定除第一维之外的其他维。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。