知识点:
1.变量名:地址空间的别名。
2.一级指针:用来保存变量的地址。
3.二级指针:用来保存一级指针的地址。
图示:
稍微再解释一下其中的一些疑问:
1.变量名a与0xffffff(a所在的那段空间地址)的区别:
变量名a:是那段地址空间的别名,因此可以直接通过a=7;给那段地址空间的内容赋值,但是别名终究是别名,它不是实际本质的地址空间,它只是为了让我们程序员方便使用内存空间,当真正要将这个地址赋值给某个指针时,是没有用的,必须要取a的址(&a)
2.图中的p可以表示指针变量名,也可以表示指针变量p
当表示指针变量名的时候,它就相当于变量名a一样的含义,是不占内存空间,只是那段内存空间的标识
当表示指针变量时,它代表的是内存空间的内容,而给指针变量p的一个指向,就相当于给指针变量p所在内存空间赋值。
欢迎批评指正