1.C++中main函数内部———变量的访问顺序

94次阅读
没有评论

在C++中,main函数内部的变量的访问是有顺序存在的,其顺序分别为(从高到低):->

具体是什么意思?请看代码:

1.C++中main函数内部———变量的访问顺序

在局部变量与全局变量都存在时,main函数会优先访问局部变量,这也叫做局部优先原则


但如果不存在局部变量a=10呢?

1.C++中main函数内部———变量的访问顺序

当局部变量被去除后,main函数内部还是会遵循访问顺序来访问,但是它访问不到局部变量a,所以它就会去访问全局变量a


1.C++中main函数内部———变量的访问顺序

      但这又是什么原因呢?有的人肯定会认为,这是因为rand是一个随机函数,创建rand变量就会与函数重名,但是这种原因是半对的,接着请看下图:->:

1.C++中main函数内部———变量的访问顺序

      我把rand放在这里又可以打印出来了,这是为什么?

      其实真正的原因是,在全局变量的rand与头文件#include<stdlib.h>是在同一作用域下,(即全局作用域),在同一作用域下的rand函数与rand变量命名重复,所以才会出现第一种报错的情况

      关于第二种情况,则是作用域不同导致的,因为rand函数作用在全局作用域,rand变量作用在局部作用域,所以,作用域不同,它们的效果也不同

正文完
 1
bld
版权声明:本文于2025-10-24转载自C++中main函数内部———变量的访问顺序,共计463字。
转载提示:此文章非本站原创文章,若需转载请联系原作者获得转载授权。
评论(没有评论)