首页 > 编程语言 > 详细

变长数组与函数参数

时间:2014-10-10 19:25:05      阅读:329      评论:0      收藏:0      [点我收藏+]

代码:

#include <stdio.h>
#include <stdlib.h>

void setval(const size_t, const size_t, int arr[*][*]);
void display(const size_t, const size_t, int arr[*][*]);

int main(void) {

	const size_t ROWS = 5;
	const size_t COLS = 3;

	int arr[ROWS][COLS];

	setval(ROWS, COLS, arr);

	display(ROWS, COLS, arr);

	return EXIT_SUCCESS;
}

void setval(const size_t ROWS, const size_t COLS, int arr[ROWS][COLS]) {

	// 变长数组名实际上是指针
	// 具有变长数组参量的函数实际上直接使用原数组,有能力修改作为参数传递进来的数组
	for (size_t i = 0; i < ROWS; ++i) {
		for (size_t j = 0; j < COLS; ++j) {
			arr[i][j] = i + j;
		}
	}

}

void display(const size_t ROWS, const size_t COLS, int arr[][COLS]) {

	for (size_t i = 0; i < ROWS; ++i) {
		for (size_t j = 0; j < COLS; ++j) {
			printf("%2d", arr[i][j]);
		}
		printf("\n");
	}

}

输出:

 0 1 2
 1 2 3
 2 3 4
 3 4 5
 4 5 6


变长数组与函数参数

原文:http://my.oschina.net/Xwoder/blog/325777

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!