c语言为什么说指针是灵魂?能简单举个例子吗?谢谢

如题所述

我们知道执行指针是危险的,执行指针很容易就会现在指针越界问题,如果是赋值操作将会对系统造成很大的危险,相信每一个程序员都会用指针取数时取过不属于自已定义的内存单元,C#里都摈弃了指针……可想而知指针的意义是不大的,完成可以用数组来代替。在C中看来,指针是完全可以替代数组的,但数组有什么它自已的优点呢?1.当你想定义一组数据变量时,十个变量?或许你还可以每个变量给它取个名字,可如果是100个,1000个呢?1000个的指针变量,每个指针你就给它取名都取到头痛,别说编写程序了。或许你会反驳,用指针动态申请也可以,很明显如果你用指针来替代数组,这时指针就不能移动了,因为一移动,它就乱了,你就不知道当前指针是指向哪里下一个内存单元又是哪里了,如果不能移动,指针也就失去了它的意义了……还有如果申请的不是连续的内存空间,比哪1000个连续的1000个单元的内存空间块呢?你是不是还得定义1000个指针变量来动态申请内存,而用数组你就可以避免,你只要定义1000个数组指针,再用循环实现动态申请就可以。2.数组定义的是一组连续的内存空间,可以说每个单元都有自已的变量名(数组名+下标)……这样如果执行越界操作时,程序将会报错……3.还有就是用数组申请一组连续的内存空间明显要比用指针动态申请空间要简单得多……4.再者数组是用到很多的,如果你全部都用针指来代替,我们知道执行指针是危险的,多一个针指操作就多一分危险,你能保证,程序编写一次就能正常运行,你这么多的针指就不会指向一些重要的系统或用户数组去操作?*只要你编写的程序够多,不难发现,数组远比指针要简单得多……
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-03-09
能够操作硬件的就只有指针

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网