c语言数组与指针混合使用方法,C语言中数组与指针的使用技巧.pdf

C语言中数组与指针的使用技巧

学术研究 Academic Research

C 语言中

数组与指针的使用技巧

张颖/莆田学院电子信息工程学系 (福建 莆田·351100)

摘 要: 1.1 一维数组元素的地址

指针是C语言的精华亦是难点,数组与指针又是指针

应用上的一个难点,尤其是二维数组与指针。文中介绍了数 表示一维数组元素的地址的方法有很多,例如可以通

组的存储方式与地址,分析了指针与数组的关系,指向数组 过数组元素前加地址符&来表示,也可以通过一维数组名加

的指针的应用,二维数组中行指针与列指针的概念与区别, 上相对位移量来表示。例如int a[5];此一维数组名a代表数

并总结了使用行指针、列指针的技巧,探讨了指针的使用方 组首地址 (即数组中第一个元素a[0]的地址,假设为1000),

法。 而a+1代表数组第一个元素a[1]的地址,这里的a+1不是表示

关键词: 加上一个字节,而是加上一个步长(即存储一个数组元素

C语言;地址;指针;数组

中图分类号: 文献标识码: 所用单元的大小),由于a数组是整型数组,每个元素占2字

TP312 A

文章编号: 节,所以a+1相当于是a+1*2 (即1000+1*2=1002),以此类推,

1673-1131(2009)04-033-03

数组a中各元素的地址表示如表1所示。

指针是一种特殊的数据类型,存放的是某个实体的地 表1 一维数组元素的地址表示

址值。掌握了指针,就可以直接处理内存单元的地址,编写 数组元素 a[0] a[1] a[2] a[3] a[4]

出简洁、紧凑、高效的程序。然而由于指针是对内存单元的 地址 1000 1002 1004 1006 1008

间接访问,因此在使用时要谨慎,以免给系统带来隐患。特 地址的表示方法① &a[0] &a[1] &a[2] &a[3] &a[4]

别是指向多维数组的指针使用时要更加小心,以下笔者就 地址的表示方法② a+0 a+1 a+2 a+3 a+4

来探讨一下在使用数组指针时的技巧。 然而a+1可不可以写成a++呢,答案是否定的,a+1只是

表示第一个数组元素的地址,而a本身没有变化,仍然代表

一、一维数组与指针 a数组的首地址。但a++相当于a=a+1,然而对于数组名a,是

一个变量的指针就是该变量的地址。而一维数组的指 数组首元素的地址,它是一个指针常量,其值在程序运行期

针就是一维数组在内存中的首地址。 间是不变的。而常量是不能自加自减的,例如5++即5=5+1是

The Skill Of Using Array and Pointer in C Programming

ZHANG Ying

(Department of Electr

你可能感兴趣的:(c语言数组与指针混合使用方法)