300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 学习c语言的时候指针应该怎么理解 – java – 前端

学习c语言的时候指针应该怎么理解 – java – 前端

时间:2023-05-31 19:23:01

相关推荐

学习c语言的时候指针应该怎么理解 – java – 前端

指针是初学C语言的一个难点。偶只能尽量说得浅显一些,希望能帮到您。

传值还是传引用

当大家调用一个函数的时候,需要考虑是向函数里传递一个变量值还是传递变量引用的问题。如果不希望函数的内部处理改变外部的变量值,那么就需要传值也就是用变量名作为参数。如果希望函数的内部处理直接改变外部参数的值,那么就需要传引用,也就是把变量的指针作为参数传进去。

地址跟指针的异同

指针的值是一个地址,这是指针和地址相同的地方。但指针是有类型的而地址却没有。指针的类型的作用是让指针运算可以按照其类型的大小移动指针。在C语言中以char为例

char a;表示a是个变量char *a;表示a是个指针,取指针指向的变量的值要用*a不管a是指针还是变量,&a都是a的地址。指针的应用

指针最典型的应用就是做链表。链表是通过指针收尾相接连起来的数组,由于可以从中间截断再接上非常方便快捷,链表是C语言的一个特色。另外,还有函数指针,结构体指针,这些指针可以用来传递复杂的变量,特别是使用函数指针可以做出来很多巧妙的程序。

指针的弊端

在定义指针的时候必须对指针进行初始化,也就是让指针指向一个实际的变量,否则,极易因为指向错误内存而引起系统崩溃。C语言的指针给操作系统的内存安全带来了不小的麻烦,因为它给黑客提供了窥视他人情报的手段。

总结一下,指针最主要的作用就是传递引用,在没有指针变量的语言中也需要对值和引用做规定,比如,C#中使用关键字ref来表示传递的是引用,而Java的类只能传递引用。C语言的指针尽管难理解,但却是最灵活的。抓住这一点,相信会好理解一点。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。