C语言中声明与定义的区别

原创 2015年07月07日 17:58:33
定义和声明判断:        A)int i;//定义;                          B)extern int i;  //声明;

定义:定义就是(编译器)创建一个对象,为这个对象分配一块内存并给它取上一个名字,这个名字就是我们经常所说的变量名或对象名。一个变量或对象在一定的区
域内(比如函数内,全局等)只能被定义一次,如果定义多次,编译器会提示你重复定义同一个变量或对象。

声明:有两重含义,如下:
第一重含义:告诉编译器,这个名字已经匹配到一块内存上了,下面的代码用到变量或对象是在别的地方定义的。声明可以出现多次。
第二重含义:告诉编译器,我这个名字我先预定了,别的地方再也不能用它来作为变量名或对象名。这种声明最典型的例子就是函数参数的声明,例如:void fun(int i, char c);
我们可以很清楚的判断:A)是定义;B)是声明。
记住,定义声明最重要的区别:定义声明最重要的区别:定义创建了对象并为这个对象分配了内存,声明没有分配内存。


相关文章推荐

CT和MRI的局限性分析

摘要 众所周知,在医疗诊治中CT和MRI等影像检查具有重要的地位,它们是临床医生不可缺少的检查方法。但也存在一些应用上的局限性。在这些局限性中,有的为检查方法的基本原理所限制,比较难以克服;有的为机...

通过K-均值聚类算法对图像进行分割

一.实验目的 通过K-均值聚类算法对图像进行分割。 二.算法概要 图像分割是一种重要的图像分析技术。在对图像的研究和应用中,人们往往仅对图像中的某些部分感兴趣。这些部分常称为目标或前景(其他部分称为...

C语言中声明和定义的区别——分析extern关键词。

一直很迷惑C语言中的声明和定义的有些实践中的用法,说迷惑实践是因为声明和定义的概念上的区别是很明确的。 定义和声明的区别(主要针对变量): 定义是要为变量分配存储空间,还可以在定义的时候为变量指定...

C语言定义和声明的区别

定义和声明的根本区别: 定义创建了对象并为之分配了内存,声明没有分配内存! C语言中有32个关键字:如下表 1.auto:编译器在默认的缺省情况下,所有变量都是aut...

C语言中声明、定义和初始化的区别

此外,其声明用于说明变量的属性(主要是变量的类型),且可多次声明;而变量的定义除此以外还将引起存储器的分配,且只能定义一次。 注意:定义是一种特殊的声明。 int sp; double val[MAX...

C语言中变量定义与声明的区别

C语言中变量定义与声明的区别(转载) (2012-04-16 21:13) 标签:  定义 声明  存储  definition  defining  C语言  分类: linux C程序设计 ...

在C语言中什么是定义?什么是声明?它们有何区别?

在C语言中什么是定义?什么是声明?它们有何区别?

C语言中的声明与定义的区别

1、对于下面的声明语句 int a;       如果其位置出现在所有的函数体之外,那么它就被称为外部对象a的定义。这个语句说明了a是一个外部整型变量,同时为a分配了存储空间。因为外部对象a并没有被...

C语言 变量声明和定义的区别

变量的声明有两种情况: 1、一种是需要建立存储空间的。例如:int a 在声明的时候就已经建立了存储空间。 2、另一种是不需要建立存储空间的。 例如:extern int a 其中变量a是...

C语言中定义与声明的本质区别:有无内存分配

变量在定义时被分配内存,并且变量可以指定一个初始化的值。变量只能在这个程序中定义一次。声明在该程序中指定了变量的类型和名称。定义也是一种声明:当我们定义一个变量时,我们声明了它的名字和类型。我们也可以...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言中声明与定义的区别
举报原因:
原因补充:

(最多只允许输入30个字)