百科问答小站 logo
百科问答小站 font logo



为什么要有指针? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

你的学习方式是错误的。

你的这些为什么要有XX的理解,大多数都是不那么正确的。


为什么要有指针,指针的内涵也就是地址是先于指针而存在的,对于C语言而言指针并不是在混沌没有指针的世界中突然发明出来的,是先有地址,然后C语言发明了一系列的语法让我们可以对地址进行操作,所以你这种学习方式是有问题的,至少不能用这种臆测的方式来学习C语言。

如果你的问题是为什么有了引用还需要有指针,我建议你先从C语言学起,再学C++语言,你就会知道引用的出现比指针晚太多了,所以根本不存在什么已经有了引用还需要指针干什么?


如果你的问题换成,如果我设计一种新的语言,是否需要设计指针,如果不设计指针,我能用什么语法来代替,这样的话,我觉得会是一个好问题。


当然,问题中最大的槽点是:

我连最基本的需求都有点不明白。我会用指针,但很多时候不明白为什么这个地方要用指针。
指针说白了就是存放的地址,可以用指针指向任何的地方,变量、结构体、类,说是“指”,其实存放这些数据的地址,方便查找,看不懂别人写的指针程序,拿出大杀招,直接画个内存分配图也能搞的明明白白。但是为什么要“指”?
我直接使用引用也能够操作这些变量、结构体、类的数据。所以关键还是为什么要另外开辟一块内存存放这些数据的地址用来访问,为什么要“指“?

按照这种说法的话,其实变量也是不需要的,变量的本质不也就是一个内存地址的别名么,你可以自己一开始把内存都规划好然后直接直接读写指定的位置就好了。




  

相关话题

  GitHub 上可供新手阅读和玩耍的 Java 项目有哪些? 
  新手关于如何看编程经典书的一些疑惑? 
  为什么 C 语言没有被 C++ 取代? 
  孩子一年级成绩不理想,朋友建议可以学学少儿编程,学习少儿编程对提高孩子的逻辑思维能力真的有帮助吗? 
  c语言中的sizeof()是如何分辨数组名和指针的? 
  C的结构体成员变量的命名有必要加前缀吗? 
  面试 C# 被人问你是如何优化你的代码的,该从哪些方面进行回答? 
  可不可以用文言文再创造一种编程语言? 
  哪一门编程语言的 Logo 最好看? 
  维护一个大型开源项目是怎样的体验? 

前一个讨论
各种豆角都怎么叫?做法有什么区别?
下一个讨论
C# 虽然在语言层面上更胜 Java 一筹,但是这对于占有率真的很重要吗?





© 2025-07-02 - tinynew.org. All Rights Reserved.
© 2025-07-02 - tinynew.org. 保留所有权利