C语言中&和* 有什么区别

83 阅读1分钟

参考链接:blog.csdn.net/qq_21583681…

总结:

我们知道内存中数据存储在一个个的存储单元中,每个存储单元都有地址和值两部分。 对于int a=1;粗略的解释为在内存中搞出一块地址,标记为a,在这块地址中存放一个整形数字1;

默认情况下,

a本身表示的是这块内存中的值;

&a就表示这块内存地址的起始地址;

*我理解为一种标记,带了这种标记的变量在编译时,变量的值会被解析为内存地址,*a就是a的值对应内存地址中存放的值;