这个是看变量的类型。1、栈区(stack):又编译器自动分配释放,存放函数的参数值,局部变量的值等,其操作方式类似于数据结构的栈。2、堆区(heap):一般是由程序员分配释放,若程序员不释放的话,程序结束时可能由OS回收,值得注意的是他与数据结构的堆是两回事,分配方式倒是类似于数据结构的链表。
int a = 0; 应当分配在 初始化为0和null的数据区。指令 带 操作数的地址。从哪里取数(什么样的数,几个字节长),放入哪个寄存器,如何加工,加工后把结果放那里去。这里涉及的是 数的地址,而不是变量名。地址为0001H,那就到0001H取数,加工,若存放a, 则存放到 地址 0001H (实际上要加...
只有一块内存空间,值为0,程序通过内存地址来找到a,并不会为保存a这个名字再单独分配一块空间。
int a = 0;//定义变量a并初始化为0 if (a = 1) //给a赋值1,赋值语句返回1,if条件成立 a += 10;//做运算 a+=10相当于 a = a+10 = 1+10 = 11;
因为在C语言中 使用一个未被赋初始值的变量是非常危险的事 它可能会是任何不确定的数,会导致一些奇怪的错误 直接将其赋值为0 只是一个好习惯,但不是必须的
int a= 0;int a;a =0;仅仅看这上述语句是一样的,但是如果在第二种后面加语句,就会出现错误 例如 int a;int *pt = &a;int b= (*pt);b =?(会出错)a= 0;所以除非你将 int a;a= 0;一直写在一起,中间不要任何语句,那么就和int a= 0;没有实质上区别 (A = 赋值 包含 B ...
对啊,怎么不对?声明int型数组a,并用一个整型数据0初始化,这个数组只有一个元素a[0],其值是0,有什么错?
int a=0; int b; b=a++;//这里可以把它分解成 b=a=0; a=a+1=1; 所以b=0 //a++表示先把a值赋给b,然后a再做++运算 b=++a; //这里可以把它分解成 a=a+1=1; b=a=1; 所以b=1 //++a表示a先做++运算,然后把a++后的值赋给b 解析看不懂?免费查看同类题视频解析查看解答 ...
a++是先使用a,然后a的值才加1,++a就是先a+1,后使用a,这样a就是2了,希望能解决您的疑惑
在C语言中,int a 表示一个整型的变量a。int是integer的缩写,意为整数。在C语言中,定义一个变量需要指定它的类型,int就是其中之一。整型变量在C语言中很常见,因为很多数值操作都需要使用整型变量。比如,要求两个整数的和,就需要定义两个整型变量a和b,然后用加号运算符相加,最后将结果赋值给另...