❶ 编程中的,定义、声明、初始化,各指的是什么,举例说明下
定义就是定义,比如INT A,就是定义一个A变量.函数也是.
大体就是没有的,你造一个出来(表达不好,知道意思就行).
初始化就是你定义出来的变量,它最开始的值是多少,你得给它一个.
int a = 100; int a; a = 100; 这种就是了.
一定记得初始化,否则,有时,会遇上一些莫名其妙的问题.
主要说的是声明,对于一个函数 void B(xxxxx){ xxxx }是这种样子.
假如在一个页面中有A,B函数,A函数里调用B函数,但是B函数是定义在A函数下面.
就是{}包起的代码是写在A下面.此时拆友哪,提示找不到B函数.
就需要void B(xxxxx);复制到A的上面去.A就知道了原来B函数是这造型.
这就叫声明一下.
当然你也许会想,还不干告档脆把代码都搬到A上面去,当然也行,但是当有ABCDEFG很多函数时
这些函数相互交叉调用,关系复杂时,你把谁搬上旅码去都搞不定.
这时就把所有函数都上去声明一通吧.
在生活中,两者常混为一谈,常听说我在函数里声明了一个XX变量,其实是错的,
是定义了一个变量,但是能知道意思就行,何必执着于对与错.
好累,希望对你有用.................
❷ 编程时声明有什么作用
这和计算机在内存管理上有关系的。
一段程序在运行时候是放在内存中的,如果你学习过操作系统的话,那么一定听过进程这个概念。变量自然也是要存放在内存中的,声明其实就是向系统申请一个空间,而实现则是你向申请好的内存放你要的数据,这是简单的理解,和真正的实现有点差距,不过解答你的问题足够了。
如果你知识够扎实的话,下面是真正的实现,比如一个例子
int a;
a = 10;
这个程序变成进程在内存中时候,它会有一个8K大小的系统堆栈空间。如果不懂就当成是个8K的内存(LINUX上是这么大,不知道WINDOWS有多大)。这个8K内存除了存放a这个数据外,还有大量其它的信息要记载,int a就是向这个8K内存申请一个int型大小的内存,其中这个内存地址就返回给a,你可以通过printf("%d", &a);来看到a中存放的地址。然后将10这个数据放到a所指定的内存中。这也就是为什么程序中局部变量不能太大的原因。
❸ 变量的声明与定义有什么区别
变量的声明是告知编译器变量的名称和类型,但不分配内存空间;而变量的定义则是为变量分配内存空间,并可能进行初始化。
详细
首先,我们来探讨变量的声明。在编程中,声明一个变量意味着我们告诉编译器这个变量的名字和它的数据类型,但此时并不为它分配实际的内存空间。声明的主要目的是让编译器知道这个变量的存在,以便在后续的代码中能够识别和使用它。例如,在C或C++中,我们可以通过“extern int x;”来声明一个整型变量x,这表明x是一个整型变量,但此时并没有为它分配内存。
接下来是变量的定义。定义变量时,我们除了指定变量的名称和类型外,还会为它分配内存空间,并且可以选择对它进行初始化。这个过程确保了变量在程序中有实际的存储位置,可以存储数据。继续上面的例子,在C或C++中的某个源文件中,我们可能会看到“int x = 10;”这样的语句,这就是对x的定义和初始化,此时编译器会为x分配内存,并将其初始值设为10。
简而言之,声明是告诉编译器有关变量的信息,而定义则是实际创建这个变量,包括为其分配内存和可能的初始化。一个变量可以被声明多次,但只能被定义一次,因为每个变量只能有一个具体的内存位置。
在实际编程中,区分声明和定义是很重要的,因为这有助于我们更好地组织代码,避免重复定义导致的错误,并允许我们在不同的源文件中共享变量信息。例如,在大型项目中,一个全局变量可能在一个源文件中定义,而在其他多个源文件中声明,以确保所有相关的代码都能正确地识别和访问这个变量。
❹ 麻烦帮我解释下在编程中什么叫声明
标识符在使用前必须进行声明,即让编译器知道这个名字所引用的是哪一类实体。
声明大部分时候和定义等同。声明和定义的区别在于:
1。对同一命名实体声明可以有多个,而定义只能进行一次。
2。如果一个操作只是声明,比如 extern int num ,说明在另外的地方还有对num进行定义的操作。。。