APP下载

浅谈c语言指针结构

2019-09-05门宇梁拓李银琦

科技风 2019年22期
关键词:指针C语言结构

门宇 梁拓 李银琦

摘要:指针是C语言中广泛使用的一种数据类型, 函数是构成C语言程序的基本单位, 在C语言中, 将指针应用于函数进行程序设计, 使函数的功能更加强大, 函数调用也更加灵活, 程序更加精练和高效。就C语言一维指针、二维指针、与辨析指针数组与数组指针讨论。

关键词:C语言; 指针; 结构;分析;

随着现代技术的发展计算机行业越来越繁荣,而作为计算机标志性工具的编程语言也被广泛的应用和开发,其中C语言更是成为大学各个专业所常用做通识学习的一门语言。

C语言是结构化的程序设计语言, C语言相对于大部分的语言来说可以对硬件底层进行更深的操作,其中一部分就要归因于C语言的指针数据类型。

C语言的数据指针类型的使用灵活多变,可与其他数据结构联合使用,如数组、函数、结构体等。而正确而灵活地运用指针, 可以有效地表示复杂的数据结构, 方便地进行字符串处理, 灵活地实现数组的应用等一系列工作。所以C语言的指针是学习C语言的重要组成部分。

1 C语言常用的指针结构

(1)一维指针变量。

(2) 二维指针内存结构。

(3) 指针数组与数组指针。

2 一维指针变量

一维指针变量内容是该变量类型普通变量内容的地址。

例:int*P,a=1;

*P=a;

int类型指针变量P的内存结构与int普通变量a的关系

图中每个数据块的前半部分是数据存储的内存地址,后半部分是内存的内容。

从图中我们可以看到指针变量P中存储了普通变量a的地址内容。

用指针表示一个变量,不仅如此一维指针变量也可以表示一个一维数组。

例:int*P,a[5];

P=a;

图中指针P中的内容指向a中的数组第一个存储空间的地址。而当用指针对数组中数据查找时只需将“P+‘数组中要查找的数据所在的序号”,使用即可。

3 二维指针内存结构

二维指针是以线性方式表示一个数组块。即用二维指针代替二维数组。

例:int**P,a[4][5];

P=a;

如图中二维指针P指向*P,而*P中每一个内容都会指向一个一维数组。

在内存中二维数组就是以二维指针指向由一维指针组成的数组,而每一个一维指针都指向一个数组,这样就构成了一个二维数组。

4 指针数组与数组指针

指针数组即指针的数组,是一个一维数组但数组内容中存储的是指针变量的地址。

数组指针即数组的指针,它是一个指针是指向数组的一个指针。

例:

如图中数组P就是一个指针数组,数组内存放的是指针变量,而每个指针又指向数组,所以每个指针又称数组指针。

5 结语

在C语言中使用指针可以进行值传递,调用函数,结构体调用,使用指针也会提高程序的运行效率,由于指针只存储地址而不管其内容是什么,所以后容易赋值、对函数调用,因此C语言具有很好的灵活性。

参考文献:

[1]谭浩强.C语言程序设计 (第3版) [M].清华大学出版社,2014.

[2]Stephen Prata.c primer plus (第6版) 中文版 [M].人民邮电大学,2017.

[3] 涂玉芬.C语言指针在函数中的运用[J].電脑与信息技术,2019,27(01):69-71.

猜你喜欢

指针C语言结构
“C语言程序设计”课程混合教学探索
郊游
基于C语言的计算机软件编程技术探究
中职C语言单片机课堂教学中的趣味性探讨
为什么表的指针都按照顺时针方向转动
计算机原理中C语言的应用价值
当型结构与直到型结构的应用
物质结构规律归纳
半包围结构
浅析C语言指针