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



为什么要有指针? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

你的学习方式是错误的。

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


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

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


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


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

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

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




  

相关话题

  非计算机专业,想刷leetcode,请问在此之前需要做什么准备? 
  计算机行业是不是自砸饭碗的行业? 
  如何评价最近CSDN的行为? 
  目前的人工智能离可以自己给自己写代码编程还有多远? 
  golang 为什么没有三元运算符? 
  操作系统里面经常说的一个功能用「软件实现」还是用「硬件实现」,其本质区别是什么? 
  如果让你来重新设计(或者改造)C++,你打算怎么设计或者修改? 
  编程真的能改变人的思维方式吗? 
  一行 Java 代码(以分号结束)能实现什么丧心病狂的功能? 
  2022年学C++开发好比49年入国军,没什么公司在用C++了? 

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





© 2025-01-26 - tinynew.org. All Rights Reserved.
© 2025-01-26 - tinynew.org. 保留所有权利