疑问迷云
下面是我个人对计算机内存的理解:我们在程序里面申请的任何一个变量计算机都会在内存里面为其分配一定的内存空间。
比如:char ptr;计算机在内存里面会专门的划分出一定的区域用来存放这个char类型
的变量ptr,而我们从键盘上键入的任何一个特定的值都会存储在ptr的地址里面。这就是为什么scanf(“%c”,&ptr)中要用到“&”这个取地址的符号!
但是对于指针变量来说却是另外一回事了!比如:char *ptr[3];在计算机的内存里面会分配一定的空间用来存放ptr[0],ptr[1],ptr[2],这个空间并不是用来存放我们从键盘上键入的特定的值的!虽然指针变量有了存放的地方,但是从键盘上键入的特定的值却没有了存储空间,于是这就需要我们通过动态分配内存的方式来使这些指针变量有一个明确的指向,也就是所谓的指针!我们通过动态分配的空间依我个人的理解应该就是地址吧!
当我写完这个的时候在我的头脑里却有了一个这样的疑问:我是否可以这样理解我们从键盘上键入的那些特定的值其实就是存放在地址里面呢?
我不知道我的个人的理解对不对,希望高手能够帮忙解释一下!
谢谢了!