变量的定义和声明
一、基本概念
在C语言中,变量的定义通常分为两种类型:声明和定义。
声明是告诉编译器变量的类型和名称,而定义是在程序的某处为变量分配内存。
变量定义或定义的基本格式是:
类型说明符 变量名列表
例如,定义或声明一个整型变量“age”和一个浮点型变量“salary”可写作:
int age;
float salary;
此外,变量可以在定义或声明时初始化,即同时赋予一个初始值。
初始化的语法是在变量类型和变量名之间加上等号(=)和初始值。例如,定义一个整型变量“count”切初始值为0,可写作:
int count = 0;
从上文的叙述可知,变量的定义和声明,二者的语法是一样的,唯一区别是变量定义为变量分配了内存,而变量声明没有给变量分配内存,它仅仅告知编译器变量的存在。
或者说,因为给变量分配了内存,所以变量才称作被定义了。
例如,在声明变量的同时,将变量初始化为 0 ,此时编译器给该变量分配了内存(因为要储存它的初始值所以给它分配内存),因此该变量就被定义了。
二、实际应用
正确的做法是在头文件中声明变量,并在一个源文件中定义变量,确保变量只有一份实际的内存分配。
在头文件(.h)文件中,通常使用“extern”关键字来声明变量,这样的声明不会为变量分配内存,它仅仅告知编译器变量的存在,并且可以在其他文件中通过外部声明来访问这个变量。
另外,在头文件(.h)文件中,最常见的是“#define”,“#define”是预处理指令,用于宏定义。它的主要作用是在编译之前进行文本替换,即将所有出现的宏名替换为宏定义中的字符串。这种替换是简单的文本替换,不涉及类型检查或内存分配。
原文地址:https://blog.csdn.net/aElect/article/details/142593276
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!