#incluudeint main() { printf("Hello world!"); return 0; }
相信各位在刚接触C语言的时候都见过这段代码,现在也以它为开头,一起来掀开C语言的神秘面纱!
一个程序的入口是main函数,而一个工程有且只有一个main函数。
这里提到的工程并不是指main函数所在的源文件,一个真正的程序往往包含多项功能,而实现这每一个功能就有可能会有上万行代码,如果我们将这些代码都放到一个源文件中,那将会让人崩溃。这时候,我们只需要将这些代码分门别类地放到多个源文件中,就能让我们的代码更加清晰明了,这就是一个工程的构建。
二.数据类型C语言为我们提供了丰富的数据类型,我们可以根据需要的数据范围和类型进行合理选择。
让我们一起来看看每种类型的大小(字节):
#includeint main() { printf("%dn", sizeof(char)); //字符数据类型 1字节 printf("%dn", sizeof(short)); //短整型 2字节 printf("%dn", sizeof(int)); //整型 4字节 printf("%dn", sizeof(long)); //长整型 4字节 printf("%dn", sizeof(long long)); //更长的整型 8字节 printf("%dn", sizeof(float)); //单精度浮点数 4字节 printf("%dn", sizeof(double)); //双精度浮点数 8字节 return 0; }
注:以上类型大小是在VS上运行的结果。
三.常量和变量在C语言中,不变的值我们用常量表示;可变的值用变量表示。
1.变量的定义与命名int age=56; char c='z'; float score=90.5;
- 变量只能由字母、数字和下划线组成。
- 不能以数字开头。
- 长度不能超过63个字符。
- 变量名不能使用关键字。
- 变量名中区分大小写。
- 局部变量:在一个函数内部或复合语句内部定义的变量(也是常说的在{ }以内定义的变量)。
- 全局变量:在所有函数外部定义的变量。
#includeint apple=7;//全局变量 void print() { printf("%d",apple); } int main() { int apple=10;//局部变量 printf("%d",apple); //输出结果为10 print();//打印7 return 0; }
总结:
在局部变量在定义时可以和全局变量同名时
- 局部变量优先使用。
- 如果在局部变量所在的局部范围内使用局部变量,需要对局部变量初始化或赋值。因为局部范围内定义局部变量后,全局变量在此范围失效。
- 修改局部变量的值,对全局变量无影响。
可理解为,此时局部变量和全局变量只是名字相同的两个不同变量。
3.变量的作用域和生命周期作用域:
1. 局部变量的作用域是变量所在的局部范围。
2. 全局变量的作用域是整个工程。
生命周期:
1. 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
2. 全局变量的生命周期是:整个程序的生命周期。
1.字面常量
直接输入到程序中的值,如int a=16; 16就是一个字面常量。
2.const修饰的常变量
const int a=15; a=16;//error 被const修饰后,a的值不能被改变,这里会报错
注:常变量并不等同于常量,在定义数组大小时,不能是const修饰的常变量。
const int a=5;
int arr[a]={0};//error const修饰a,只是在语法层面限制a不能改变,而a的本质还是变量
3.#define定义的标识符常量
定义的标识符不占内存,只是一个临时的符号,预编译后这个符号就不存在了。
#include#define MAX 100 //在预编译时,会直接把程序中的MAX替换为100 int main() { printf("%d",MAX);//输出100 }
4.枚举常量
#includeenum Sex { MALE, FEMALE, SECRET }; //括号中的MALE,FEMALE,SECRET是枚举常量 int main() { printf("%d %d %d",MALE,FEMALE,SECRET);//0 1 2枚举常量的默认是从0开始,依次向下递增1的 return 0; }
#includeenum Sex { MALE=3, FAMALE, SECREAT=6 }; int main() { printf("%d %d %d", MALE, FAMALE, SECREAT);//3 4 6 return 0; }
注意:在定义枚举常量时,最后的分号不要忘记。
结语:后期会持续更新C语言相关内容....



