【c++】变量的声明和定义

变量的定义:给变量分配空间,还可以为变量指定初始值。不能重复定义变量

int j; //变量的定义,
int k; //变量的定义,分配内存,初始化
extern int n = 10;//变量的定义,初始化(建议不要使用此方法定义)

变量的声明:不给变量分配空间,用于向程序表名变量的类型和名字,此变量在其它cpp中已经定义,变量可以多次声明。
事实上,它只是说明变量定义在程序的其他地方定义过。

extern int i; //变量的声明

定义也是声明,在一个源文件中,定义后的变量,不需要再声明

声明不是定义,必须在当前或者其他cpp中对变量进行定义,之后才能声明
在使用变量之前必须定义或声明变量。


 程序含有两个源文件,在一个源文件中定义并初始化,在另一个源文件中声明,并打印输出:

Test-007.cpp:

#include<iostream>
using namespace  std;

int i = 100; //变量定义,给变量分配空间

Test-001.cpp:

#include<iostream>
using namespace  std;

extern int i;
int main()
{
    cout << i << endl; 
    
    cin.get();
    return 0;
}


 程序可以多次声明:

#include<iostream>
using namespace  std;

extern int i;
extern int i;//再一次声明也可以
int main()
{
    cout << i << endl; 
    
    cin.get();
    return 0;
}

程序不能重复定义:

int i = 100; //变量定义,给变量分配空间
int i = 100; //不能重复定义


 在另一个源文件中定义,在当前文件下声明后。不能再重复定义。

#include<iostream>
using namespace  std;

extern int i;
int i = 200;
int main()
{
    cout << i << endl; 
    
    cin.get();
    return 0;
}


 

posted @ 2021-07-23 17:48  王牌飞行员_里海  阅读(500)  评论(0编辑  收藏  举报