同样都是数字1234,那你怎么区分那个是地址,那个是普通的数值
当然这里代码比较简短,一眼就可以看穿问题所在,当代码量上去了,变量的定义和使用分开了,人为区分就更难了。更何况还需要帮助机器区分。
c语言里的内存地址是整数,为什么不用int,而是用int*,其次是因为代码一般是不能存在二义性问题。同一个作用域下不能存在相同变量,当指针没有*起说明作用的时候,二义性问题将会更容易产生。
c语言里的内存地址是整数,为什么不用int,而是用int*,最后一点就是由于指针的用法所决定的,虽说指针都是一个整数,但是大家使用指针,从不用关心指针变量中存储的整数是多少,因为运行程序分配的是虚拟内存,大部分使用特定标识即可,而不是直接使用一个确定整数。