编程语言中,何为指针?它们都有什么用呢?其实通俗点讲,将一个椅子放进一个小房间锁上门,你若想拿出凳子,就必须有锁门的钥匙,而这钥匙就是指针。
举一个简单的例子:
int a = 3;
int *p;
p = &a;
p就是一个指针,通过它就能打开a这扇门,就像钥匙一样。
指针变量里面就是整型的一个十六进制数,用来表示的就是指向某个变量的地址指针是C语言中广泛使用的一种数据类型,指针就是指向一个特定内存地址的一个变量。C语言指针可以有效地表示复杂的数据结构、动态分配内存、高效地使用数组和字符串、使得调用函数时得到多个返回值等。指针的应用往往与数组联系在一起,是最频繁的,也是最基础的。在定义数组和函数时,系统都会为其自动分配一个指向其首地址的指针。对于一个数组,其名称就是一个指针变量。
利用指针变量可以表示各种数据结构;能很方便地使用数组和字符串;并能象汇编语言一样处理内存地址,从而编出精练而高效的程序。它能直接与数据等的储存地址有关,是比较重要的。比如,值传递不如地址传递高效,因为值传递先从实参的地址中提出值,再赋值给形参带入函数计算;而指针则把形参的地址直接指向实参地址,使用时直接提出数据,使效率提高,特别在频繁赋值等情况下。
指针极大地丰富了C语言的功能,学习指针是学习C语言中最重要的一环,能否正确理解和使用指针是我们是否掌握C语言的一个标志!所以基本概念很重要,它是第一位的,也是比较困难的,但只有把握了基本概念才能把握整体脉络,才能居高临下。
领取专属 10元无门槛券
私享最新 技术干货