(接上面问题)也就是要把5存到内存中的某个位置,这个位置怎么和变量a发生关系的,计算机要用a里面存的内容 5 的时候,怎么在内存中找到这个5的。[一共有20个财富值,全拿出来了
不能因为超出c语言范围就不解决。这真是。。。。不靠谱,我还是自己去图书馆看编译原理去吧。
当你说意义不大,我就不想往下看了。结果我还是看完了,你假设的不能解决问题。你又假设出来的地址,计算机该怎么分辨哪个是哪个?
追答这样吧 我举个例子,有1000,1001,1002三个地址。假设你创建了一个变量a ,系统就会把a这个变量当成是1000这个地址,1000里面存的是一个地址,这个地址就是5所在的地址。 当然这些说的东西只是我自己的理解。我不敢肯定一定是对的。 但是有一点 这个问题意义 确实不大,在C里面你这样搞懂指针 基本上内存就可以用好了
追问系统怎么辨识1000的?
追答。。。因为系统里1000 他本来就是一直放变量的一个地址,他不放别的,我感觉是
追问那如果有变量b,计算机怎么分辨这个1000里放的是b还是a.
计算机“根据指针找到对应的内存”,根据的这个指针计算机又是怎么找到它的值的?
追答比如指针a指向0x00000010,就去要这个地址的存放值啊,这个地址最终指向物理内存里的某个存放位置,一堆0和1拿回来才知道是5啊。
追问要去0x00000010去存放5,那计算机怎么得到0x00000010这个量的。如果你回答从a那得来的,那计算机怎么找到a的。such a stupid loop,en heng?
追答那个已经出了C语言的范围了,去看汇编和windows kernel编程。
本回答被网友采纳