php中的&操作符和c语言&操作符有什么区别
答案:2 悬赏:60 手机版
解决时间 2021-04-03 02:04
- 提问者网友:眉目添风霜
- 2021-04-02 10:06
php中的&操作符和c语言&操作符有什么区别
最佳答案
- 五星知识达人网友:酒者煙囻
- 2021-04-02 11:30
C中,int* a;,&a得到的不是a指向的int的值,而是类型为int*的a变量的内存地址。这点题主大概是记错了吧。无论何时C中&都是取变量自己的内存地址。*a得到的才是它指向的整型变量的值。
我们要清楚一点:PHP是解释型的语言,并不会编译成二进制,内存方面都交给运行时环境去做了。种种特性,表明这不需要开发者去关心底层。因此,PHP中规定&是绑定到某个变量,那么它就是这样。
不仅PHP,包括问题中所提到的Java、C#,虽然它们也需要编译,但是编译后的.class和msil仍然要在JRE和.NET CLR上才能运行。这些语言的特点就是运行时环境帮助开发者做了很多事情。这与C这个需要开发者手动管理内存的语言有着本质上的区别。
我们要清楚一点:PHP是解释型的语言,并不会编译成二进制,内存方面都交给运行时环境去做了。种种特性,表明这不需要开发者去关心底层。因此,PHP中规定&是绑定到某个变量,那么它就是这样。
不仅PHP,包括问题中所提到的Java、C#,虽然它们也需要编译,但是编译后的.class和msil仍然要在JRE和.NET CLR上才能运行。这些语言的特点就是运行时环境帮助开发者做了很多事情。这与C这个需要开发者手动管理内存的语言有着本质上的区别。
全部回答
- 1楼网友:独钓一江月
- 2021-04-02 12:41
$a=&$b // *a=*(*b)
$a取的地址就是b内存指向数值的地址,所以$b发生变化,也就是b指向数值的内存地址发生了变化。
我认为楼主理解的没有错,C中指针型变量存储的是指向对象的地址,而非本身地址
$a取的地址就是b内存指向数值的地址,所以$b发生变化,也就是b指向数值的内存地址发生了变化。
我认为楼主理解的没有错,C中指针型变量存储的是指向对象的地址,而非本身地址
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯