正文
为什么指针是c语言精华,为什么指针是c语言精华呢
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
老师说指针是C语言的核心,这样说有道理么
C语言中的指针,关键意思在于“指”。“指”是什么意思?其实完全可以理解为指示的意思。比如,有一个物体,我们称之为A。正是这个物体,有了这么个称谓,我们才能够进行脱离这个物体的实体而进行一系列的交流。将一个物体的指示,是对这个物体的抽象。有了这种抽象能力,才有所谓的智慧和文明。
意思是一个char指针。在计算机科学中,指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为“指针”。意思是通过它能找到以它为地址的内存单元。
C是一个结构化语言,如谭老爷子所说:它的重点在于算法和数据结构。
在没有C++语言的年代,没有面向对象、模板的语法支持,struct中还不能定义函数,用C语言想要对业务功能(算法,此处即指函数)进行抽象,不想依赖具体的数据结构/数据类型,此时就必须用指向函数的指针来实现抽象与具体的分离,该函数的入参可以是void*,这样调用者就可以传入任意类型的参数了。
我们知道执行指针是危险的,执行指针很容易就会现在指针越界问题,如果是赋值操作将会对系统造成很大的危险,相信每一个程序员都会用指针取数时取过不属于自已定义的内存单元,C#里都摈弃了指针……可想而知指针的意义是不大的,完成可以用数组来代替。
我上大学一年级的时候,就开始接触C语言了,C语言自认为学的还可以。像数据、变量、循环、判断等都是手到擒来。但学到第8章,也就是学到了指针那一块,就感觉有一点懵了,老师也说指针是比较费脑力的,死记硬背是不可取的,需要理解它的含义。在学习指针之前,基本都没了解面向对象是什么意思。
为什么指针是c语言的灵魂?
综上,C语言的精髓是指针,但指针不仅仅是C语言的精髓,它是抽象的精髓。
踏入C语言的神秘世界,探索底层编程的奥秘,指针篇是理解内存直接操作的关键。作为C语言的灵魂,指针让你如同魔法师一般,掌控内存的每一个角落。首先,让我们揭开指针的面纱。C语言作为底层语言,赋予我们直接操作内存的魔力。
我们知道执行指针是危险的,执行指针很容易就会现在指针越界问题,如果是赋值操作将会对系统造成很大的危险,相信每一个程序员都会用指针取数时取过不属于自已定义的内存单元,C#里都摈弃了指针……可想而知指针的意义是不大的,完成可以用数组来代替。
C语言中指针重要吗?
1、学C语言时,多上机,多做题。特别应该将指针这一部分学好,指针的知识既是C语言的重要特性和重点,又是C语言的难点。如果学不好这一部分,C语言基本算白学。
2、指针是值得重视的。编程不一定用指针,可以用数组。但是,对编程来说,一般指针就占用4个字节,保存某个变量、结构体甚至是函数的地址。程序运行,直接按地址跳转是非常快的,效率很高。
3、指针的优点 是标识一块内存。电脑内存上的每一个字节都具有一个编号,称为地址(可以简单理解为指针),任何读写内存的指令都必须携带地址信息,否则电脑不知道读写那块内存。
4、在没有C++语言的年代,没有面向对象、模板的语法支持,struct中还不能定义函数,用C语言想要对业务功能(算法,此处即指函数)进行抽象,不想依赖具体的数据结构/数据类型,此时就必须用指向函数的指针来实现抽象与具体的分离,该函数的入参可以是void*,这样调用者就可以传入任意类型的参数了。
5、表示成员选择(指针),选择结构体的成员变量。结构:运算符 - 是指向结构体成员运算符,结合方向为自左向右。用法:对象指针-成员名。
c语言中,为什么要用“指针”这个词?
1、首先,指针是特殊的变量,比如int *p;如果不加*号,你可以把p当做一个普通变量,而这个变量中存放的东西是一个内存地址。
2、C语言引入指针,是为了直接操作计算机内存。这个功能使得可以用C语言写操作系统、驱动程序之类系统底层的程序。指针的微妙之处:每个指针本身有一个对应的内存单元,这个内存单元中可以存放别的变量、函数等等的内存地址。指针是有类型的。如char*,int*,float*,double*,void*等等。
3、因为指针通过地址传递参数,如果不用指针传送速度慢。
4、第二,指针使得一些复杂的链接性的数据结构的构建成为可能,比如链表,链式二叉树等等。第三,有些操作必须使用指针。如操作申请的堆内存。还有:C语言中的一切函数调用中,值传递都是“按值传递”的。如果要在函数中修改被传递过来的对象,就必须通过这个对象的指针来完成。
5、比如说你和你同学,你们两个人都有心脏、肝、肺等器官,如果命名心脏心脏2这样比较麻烦,这时如果用上指针,指向你说心脏时说的是你的心脏,指向你同学时说的是你同学的心脏,如果人非常的多,你不用指针,那么命名心脏。。那是非常的多的不必要的变量。
C语言高手一般不用指针?
应该说C语言的精华就在指针吧。指针是C语言的一大特点吧,也是它区别于其他高级语言的地方,C语言允许用户通过指针直接访问计算机内存。像C++,基本用引用了,JAVA根本没有指针的概念。但是直接操作计算机内存是件非常危险的事情。指针的错误使用可以直接导致编写的程序崩溃,内存溢出等问题。
指针是值得重视的。编程不一定用指针,可以用数组。但是,对编程来说,一般指针就占用4个字节,保存某个变量、结构体甚至是函数的地址。程序运行,直接按地址跳转是非常快的,效率很高。
显然这时传指针要快一些,结果结构体很大,这种效率差距还会加大!但是,如果不是传递参数,用指针引用变量就会比直接使用变量要慢。因为程序首先要计算指针指向的地址,然后才能定位到相应的变量上,比直接用这个变量转了一道弯,肯定就会慢些了,而且也不直观,属于画蛇添足。
一般来说不涉及动态分配大小,不涉及在函数中更改实参(比如自己实现两个int交换的swap 主法这类),就不需要用指针。
为什么很多人觉得C语言只要学会了指针基本上差不多掌握这门语言?
指针的缺点 指针可以操作任何东西,所以指针很灵活、很强大,但也引入了复杂性。
我看了不少书,发现有些写得差的书中,就把指针的这两个概念搅在一起了,所以看起 书来前后矛盾,越看越糊涂。 3。 指针的值,或者叫指针所指向的内存区或地址。 指针的值是指针本身存储的数值,这个值将被编译器当作一个地址,而不是一个一般的数值。
因为指针通过地址传递参数,如果不用指针传送速度慢。
应该说C语言的精华就在指针吧。指针是C语言的一大特点吧,也是它区别于其他高级语言的地方,C语言允许用户通过指针直接访问计算机内存。像C++,基本用引用了,JAVA根本没有指针的概念。但是直接操作计算机内存是件非常危险的事情。指针的错误使用可以直接导致编写的程序崩溃,内存溢出等问题。
边看教学边学不错.另外,我觉得谭浩强编的c语言程序设计那本书不错.不过,如果你想成为好的程序员,建议你修好离散数学,编译原理,线性代数等课程 C语言学习心得 前言 指针,一直被认为是C语言中的精华。只有掌握了指针,你才能说你学会了C语言。
为什么指针是c语言精华的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于为什么指针是c语言精华呢、为什么指针是c语言精华的信息别忘了在本站进行查找喔。