声明外部符号extern,这个关键字常常置放在main函数外的,它的主要作用是在其他模块中寻找此变量或者函数的定义。
左图里,没有定义常量a的值;但使用了extern之后,告诉编译器去其他模块里找到了a的值。
在之后extern还有更大的用处,目前知晓这个便足够了。
常量
顾名思义,一个不变化的量,是不随着时间变化的某些量的固定信息。但是你们知道常量又分为哪些嘛?小编整理了一下,如下:
字面常量:在程序里面,为基本数据类型赋值的结果值被称之为字面常量,例如,int a = 10;这个10被称之为字面常量。若是更加细分,则有整型字面常量、浮点字面常量、布尔字面常量、单字符/字符串字面常量。在这就一一举例了。
const修饰的常变量:将一个已经赋值的变量名当做常量对待,并且之后无法对该变量名进行修改解释就让程序来表示吧:
const int a=10; int arr[a]={0};//此时的a已经是一个常量,可以使用。 ================================================ const int a=10; a=15; printf("%d",a);//编译错误,因为a在const的修饰下, //已经是一个常量,不可能修改
#define标识符常量:编译前的处理(预处理)使用方法是:#define 标识符 常量 放置在main函数外。注凡是以“#”开头的均为预处理指令。
include<stdio.h> #define M 100 int main(){ printf("%d",M);//编译结果是100 return 0; }
枚举常量(enum):一个集合,集合中的元素(枚举成员)是一些命名的整型常量,元素之间用逗号,隔开。
enum color { //Red、Green、Blue是枚举类型color的可能取值,并且也是常量 Red,//0 Green,//1 Blue,//2 }; int main() { enum color c=Red; printf("%d",c); // 0 printf("%d",Red); // 0 printf("%d",Green); // 1 printf("%d",Blue); // 2 //Red =100;Red本身就是常量,不可以改 return 0; }
以上便是常量的种类了。
---------------来自一个不知名的菜鸟大二学生
请路过的帅哥美女点点赞支持支持我,ヾ(o′▽`o)ノ°°谢谢