您的位置:首页 > 编程语言 > C语言/C++

cpp中变量的声明与定义的区别

2008-10-08 14:01 337 查看
从本质的角度来说,声明与定义的区别在于前者完全不需要分配存储空间而后者需要。但是声明与定义的形式丰富,我们必须了解什么样形式的cpp句子是声明句、又是什么样的句子才能叫做定义句。。
一、先说内置类型的变量:int、char.... 对于内置类型变量来说:

1、所有以内置类型名开头+空格+变量名; 的句子都是定义句。如 int x; char c;

2、所有 extern+空格+内置类型名+空格+变量名; 形式的句子都是声明句。如 extern int x; extern char c;

3、所有 extern+空格+内置类型名+空格+变量名=常量; 形式的句子都是定义句。

如 extern int x=1; extern char c='k';

注意,第2与第3形式在的差别只在于有无赋值行为,而正是因为这点差别,才导致了第二条中提到的语句属于声明句、第三条中的语句属于定义句。因为从本质上看,有赋值行为就肯定要分配存储空间,而分配存储空间就说明这个是一个定义的行为了。

二、再说类类型
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: