龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

学点 C 语言(36): 函数 - 数组参数

时间:2009-12-22 15:42来源:未知 作者:admin 点击:
分享到:
数组参数属于指针参数. 指针参数即时传址参数(或叫引用参数), 如果想在函数中修改参数的值, 这是唯一的途径. 如果把数组当作参数, 不管你愿意与否, 它就是指针, 指向第一个值的指针

  数组参数属于指针参数.

  指针参数即时传址参数(或叫引用参数), 如果想在函数中修改参数的值, 这是唯一的途径.

  如果把数组当作参数, 不管你愿意与否, 它就是指针, 指向第一个值的指针.

  1. 数组参数就是指向第一个元素的指针:

#include 

void getArr(int p[], int si);

int main(void)

{

  int ns[] = {1,2,3,4,5};

  getArr(ns, sizeof(ns)/sizeof(ns[0]));

  

  getchar();

  return 0;

}

void getArr(int p[], int si) {

  int i;

  for (i = 0; i < si; i++) {

    printf("%d

", p[i]);  

  }

}

  2. 干脆直接声明为指针:

#include 

void getArr(int *p, int si);

int main(void)

{

  int ns[] = {1,2,3,4,5};

  getArr(ns, sizeof(ns)/sizeof(ns[0]));

  

  getchar();

  return 0;

}

void getArr(int *p, int si) {

  int i;

  for (i = 0; i < si; i++) {

    printf("%d

", p[i]);  

  }

}

精彩图集

赞助商链接