注册 登录
编程论坛 C++教室

关于变量的'声明'与'定义'

冥玫怪盗 发布于 2008-08-01 16:54, 919 次点击
这个问题看似很简单,我想很多人会笑我,不过我在看书的时候,看到书上说这个挺重要的,虽然我不清楚以后到底会有什么区别,但是现在只想知道,是否用exrern作为修饰且没有初始化的就叫声明,即使有extern,但初始化了,就叫定义。例如:
extern int i;//这是声明.

extern int i=10;//这是定义.

int i = 10;//这是定义.

int i;//这是定义.

以上四种,我都做了答案,如果有错,就请指正,或者在有说明最好!
3 回复
#2
mark02892008-08-02 16:15
1,3,4我觉得没问题,第二个看起来怪怪的
#3
冥玫怪盗2008-08-02 17:18
如果1.3.4没问题的话,那第二个我就可以肯定的告诉你,是对的,因为只要初始化了,就是定义。
#4
xuanzilie2008-08-02 19:00
嗯,第三个不是还可以写成 auto int i = 10;
1