【C语言】变量的声明与定义

2025-07-14 05:49:37

变量的定义

char x; //声明且定义变量x

int y = 1; //声明且定义变量y,并且初始化变量y

变量的声明

需要建立存储空间的。

char x; //声明且定义变量x

int y = 1; //声明且定义变量y,并且初始化变量y

不需要建立存储空间的,通过使用extern关键字声明变量名而不定义它。

extern char x; //仅声明变量x

extern int y = 1; //仅声明变量y

注意:一个变量不能在函数中同时extern和初始化

#include

int main()

{

extern int a = 10; //全局变量不能在函数中定义

printf("a = %d\n", a);

}

实例1

#include

//函数外声明并定义全局变量x,y

int x;

int y;

void func1(void)

{

//声明变量x,y

extern int x;

extern int y;

//给变量x,y赋值

x = 1;

y = 2;

//打印输出变量x,y

printf("变量x为:%d\n", x);

printf("变量y为:%d\n", y);

}

int main()

{

func1();

}

实例2

demo1.c文件代码

//另一个文件中声明并定义全局变量x,y

int x;

int y;

main.c文件代码

#include

void func1(void)

{

//声明变量x,y

extern int x;

extern int y;

//给变量x,y赋值

x = 1;

y = 2;

//打印输出变量x,y

printf("变量x为:%d\n", x);

printf("变量y为:%d\n", y);

}

int main()

{

func1();

}

实例3

demo1.c文件代码

//另一个文件中声明并定义全局变量x,y

int x;

int y;

demo1.h文件代码

#ifndef __DEMO_H_

#define __DEMO_H_

//声明变量x,y

extern int x;

extern int y;

#endif // __DEMO_H_

main.c文件代码

#include

#include "demo.h" //引用头文件

void func1(void)

{

x = 1;

y = 2;

//打印输出变量x,y

printf("变量x为:%d\n", x);

printf("变量y为:%d\n", y);

}

int main()

{

func1();

}