Chinaunix首页 | 论坛 | 博客
  • 博客访问: 250307
  • 博文数量: 88
  • 博客积分: 1429
  • 博客等级:
  • 技术积分: 523
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-18 15:31
文章分类

全部博文(88)

文章存档

2017年(2)

2016年(24)

2013年(1)

2012年(24)

2011年(15)

2010年(22)

我的朋友

分类: C/C++

2010-11-09 14:52:36

一、一维数组名作为函数的参数

void test(int *b); //函数声明, b可以不要
或者:
void test(int b[]);
void main()
{
    int a[10];
    test(a);
}


[说明]
将数组名作函数的实参时,不是值传递,而是地址传递。在test函数对形参b数组的修改,会更改实参a数组。
 
二、多维数组名作为函数的参数

//二维数组
#define ROW 10
#define COL 10

//注意形参的格式!!!
void test(int b[][COL]); //声明
或者:
void test(int (*b)[COL]);

void main()
{
    int a[ROW][COL];
    test(a); //调用时,传入数组名即可。
}


[说明]
int (*b)[COL]; :为数组指针(数组的指针),b指向一个可以存放COL个整形数据的数组。
阅读(801) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~