关于声明和定义

    在程序中,我们经常不会在意声明和定义,因为在很多情况下,不会引起很大问题。但是二者还是有很大的差异,而且,在一些情况下会引发一些问题。多重定义是最容易出现的错误。
    变量的定义(definition)用于为变量分配空间,还可以为变量指定初始值。一个程序中,变量有且只有一个定义。

    声明用于向程序声明变量的类型和名字。定义也是声明:当定义变量的时候我们声明了他的类型和名字。可以通过关键字extern声明变量而不定义他(特别注意:如果没有这个关键字,则默认属于定义,会分配空间)。一个程序中,变量可以多次声明。

  
  
  
  
  1. extern int i;   //声明但不定义i,不会分配空间 
  2. int i;          //声明并且定义i,会分配空间 

 

你可能感兴趣的:(声明,定义)