指针数组和行指针.docVIP

  • 5
  • 0
  • 约4.32千字
  • 约 8页
  • 2018-01-01 发布于河南
  • 举报
指针数组和行指针

指针数组和行指针 第一部分:指针数组和行指针 1.指针数组: ---- 指针数组定义的一般形式: 类型名 *指针数组名[常量表达式]; 例如: int *p[3]; **** 定义一个一维数组,该数组中含有3个元素。且这三个元素都是指针变量,且每个指针变量都指向类型为int的元素。 ----二维数组和指针数组的关系: 例如:int a[3][2],*p[3],i; for(i=0;i3;i++) p[i]=a[i]; ****如果上述语句成立说明该指针数组中的每个元素都指向了其对应的二维数组的对应行。 ----指针数组对应二维数组引用: int a[3][2],*p[3],i,j; a[i][j] ---------------- p[i][j] *(a[i]+j) ---------------- *(p[i]+j) 由于:p[i]------------*(p+i) p[i][j] ---------------- (*(p+i))[j] *(p[i]+j) ---------------- *(*(p+i)+j) 2.行指针 ---- 一般定义形式: 类型名 (*行指针名)[常量表达式]; 例如: int (*q)[2]; **** 定义了一个指针变量,该指针一次可以访问2个类型为int的元素。 ----- 二维数组和行指针的关系: int a[3][2],(*q)[2]; q=a; ----- 行指针来引用二维数组: a[i][j]-----------------------------q[i][j] *(a[i]+j)---------------------------*(q[i]+j) (*(a+i))[j]-------------------------(*(q+i))[j] *(*(a+i)+j)-------------------------*(*(q+i)+j) ---------------------------------------------------------- ---C语言是一种结构化的程序设计语句。 ---C中提供了模块化的设计思想,而模块化的体现是通过函数 ---C语言是一种函数式的设计语句,在C中没有子程序的概念只有函数的思想,因此C语言的基本单位是函数 ---程序总是主函数左边的括号开始执行到右边的花括号结束。 ---C程序是由若干个函数构成,但主函数只能唯一。 ---分类: 库函数: 自定义函数: 第二部分:库函数 ---库函数的一般调用形式: 库函数的函数名(参数);-----函数调用语句 例如: printf(a=%d\n,a); putchar(ch); y=sqrt(a); --- 库函数在程序中体现形式: (1)作为独立语句 putchar(ch); (2)以表达式语句出现。 y=sqrt(a)+b; ----文件包含: *** 必须以#include 开头 *** 其后跟着是头文件。 *** 头文件必须放在或 *** C中头文件的后缀名一般为.h,当不是所有的头文件都是.h ---看看几个常用的库函数及对应的头文件: (1)输入和输出函数 #include stdio.h printf getchar puts .... (2)数学函数 #include math.h fabs sqrt pow sin cos log exp .... (3)字符函数 #include ctype.h isdigit isalpha isspace.... (4)字符串函数 #include string.h strcpy strcat strlen strcmp .... (5)动态分配和随机函数 calloc malloc free.... rand 第三部分:自定义函数 1.自定义函数定义的一般形式:

文档评论(0)

1亿VIP精品文档

相关文档