变量的声明、定义、赋值和初始化有作用上的区别:声明用于向程序表明变量的类型和名字;定义主要用于为变量分配存储空间;赋值是把对象的当前值擦除,再给一个新值替代;初始化是在创建变量时赋予一个初始值。 1.声明、定义、赋值和初始化的作用 (1)声明的作用:向程序表明变量的类型和名字。一个文件如果想使用别处定义...
前者是声明外部变量,如 extern int a,不会为变量分配内存。后者是在声明一个新变量并分配内存,如 int a; 只不过全局变量会默认初始化为0,而局部变量仍然是内存中的垃圾值。 定义为变量分配内存空间,等价于定义型声明。 很多地方直接将声明和定义的区别解释为: 声明就是 int a; 定义就是 int a = 1; 声明...
声明:可以多次出现,只是告诉编译器有这么个对象,对象是在其他地方创建的。 定义:只能出现一次,创建了一个对象,并为他分配一块内存空间。 赋值:把值放到这块存储空间里面去,赋值时,赋值号左边叫做左值,代表一块存储空间。 初始化:可以再定义的同时,把值放到存储空间里面去。
int A; //是定义,定义了A为整型的外部变量(全局变量) 外部变量(全局变量)的"定义"与外部变量的"声明"是不相同的,外部变量的定义只能有一次,它的位置是在所有函数之外,而同一个文件中的外部变量声明可以是多次的,它可以在函数之内(哪个函数要用就在那个函数中声明)也可以在函数之外(在外部变量的定义点之前)。
它与声明的区别在于是否分配存储空间 定义不是一个狭隘的词,还用在函数的定义和类的定义中 初始化 从无到有叫初始化 在定义变量时的赋值或引用的过程即为初始化,可理解为第一次赋值或引用 赋值 普通变量值传递的过程 区别与初始化是值的覆盖,也就是对于已经定义好的变量,重新给出值 ...
声明和定义差不多,比如,声明一个变量,和定义一个变量,初始化就是将该变量赋初始值,比如int a = 0; 声明了一个int 类型的变量,变量名是a,初始值为0,给变量初始化很重要,因为该变量所在的内存可以已经有一个值了,不初始化,改变量可能是个垃圾值,对后面的计算有影响 ...
通过显式使用关键字extern, 表明是让编译器从其他地方查找变量i的定义。而定义就是直接写:int i; //OK ,没问题。通常而言,定义也包括了声明,但声明不包括定义。初始化,如果这个词用在这里,这个就简单了,就是赋个初值呗。int i = 10; //初始化i的值为10.
相反,以下是带有初始化的定义: int x = 0; 在某些情况下,谈论“初始化”、“定义”和“声明”是没有意义的。例如,如果您在谈论一个函数,那么 初始化 并没有多大意义。 所以,答案是 否定 的:定义并不意味着声明加初始化。 原文由 Shoe 发布,翻译遵循 CC BY-SA 3.0 许可协议 ...
1.定义需要分配存储空间 2.初始化是定义变量时候赋给变量的值;3.赋值是以后用到该变量,赋给该变量新的值;定义是在内存中确定变量的位置、大小。初始化是定义变量时候赋给变量的值(从无到有).赋值是以后用到该变量,赋给该变量新的值.int i;//定义 int i=9;初始化 i= 7;// 赋值 ...
int y=0; 这个也叫初始化,定义的同时赋值就是初始化。一个名字(标示符)能够在C++程序里使用之前必须首先声明。也就是说,对于变量,必须刻画清楚它的类型;对于函数必须刻画清楚它的参数和返回值,以通知编译器这个名字所引用的是哪一类实体下面是合法的声明:struct User;extern int x;c/c++...