请问一下各位: int a; a=1;和int a=1;他们有区别吗,都是什么意思啊。。谢谢
展开全部
你好!!!
int a; a=1;和int a=1;从一般的角度来看是一样的:即我们使用的是变量的值即a的值1
但是要是从运行的时间来看是不一样的:int a; a=1;表示首先我们声明一个整型的变量a,并没有分配空间,只是告诉编译器变量的标识符和变量的类型,此时要是我们用a的值会是一个随机数,a=1;此时系统会在栈了给变量分配内存,并把值1放到内存中。此时变量分配的空间是在运行时才分配的!!!!
int a=1;表示就是定义,即声明时带初始值。此时不仅告诉编译器变量的标识符和变量的类型,还在编译时期就在栈分配了空间!!!
总结:int a; a=1;它是在运行是得到内存空间的,int a=1;其实在编译时期就得到内存的。
要是楼主不理解c/c++中内存分配的问题就到百度上看看相关的文章!!!
不理解我们再交流!!!
int a; a=1;和int a=1;从一般的角度来看是一样的:即我们使用的是变量的值即a的值1
但是要是从运行的时间来看是不一样的:int a; a=1;表示首先我们声明一个整型的变量a,并没有分配空间,只是告诉编译器变量的标识符和变量的类型,此时要是我们用a的值会是一个随机数,a=1;此时系统会在栈了给变量分配内存,并把值1放到内存中。此时变量分配的空间是在运行时才分配的!!!!
int a=1;表示就是定义,即声明时带初始值。此时不仅告诉编译器变量的标识符和变量的类型,还在编译时期就在栈分配了空间!!!
总结:int a; a=1;它是在运行是得到内存空间的,int a=1;其实在编译时期就得到内存的。
要是楼主不理解c/c++中内存分配的问题就到百度上看看相关的文章!!!
不理解我们再交流!!!
2010-08-22
展开全部
基本一样,第一个是先申明,后赋值,第二个是申明与赋值同时进行,一般数年之后的人,都惯用第二种方法。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
效果是一样的,如果有多个变量要赋值的话就用第一种
比如,int a,b,c;
a=1;
b=2;
c=3;
用第二种容易错,比如,
int a,b,c=3
看起来好像是a、b、c都等于3,实际上只有c等于3而已
我是C++初学者,QQ1032464096,有兴趣的话加我一起讨论吧:)
比如,int a,b,c;
a=1;
b=2;
c=3;
用第二种容易错,比如,
int a,b,c=3
看起来好像是a、b、c都等于3,实际上只有c等于3而已
我是C++初学者,QQ1032464096,有兴趣的话加我一起讨论吧:)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int a; a=1;表示首先我们声明一个整型的变量a,
int a;表示定义一个整型变量,不是声明。extern int a;才是声明
不信你可以在任意C++编译器 连着两行int a; 你看看他会提示什么。
补充完整以符合题意:
int a;//定义一个整型变量a,并分配随机值(可以Debug查看,没初始化都是这个:-858993460)
a = 1; //给变量a赋值
int a = 1; //定义变量a并赋初值为1;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询