- 初识C语言
(1)第一个C语言程序
编写源代码的目的:通过编译器,生成.exe文件。(编译器的本质功能)
头文件中包含了基本的输入输出函数。函数从main函数为入口(入口函数),main函数的参数列表为空,返回值为int类型,返回值为return 0;。
(2)数据类型
为什么C语言中会存在各种数据类型?
计算机是为了解决人的问题,人的数据有临时数据和全局数据,数据本身是需要被存储的,数据本身是有大小的,C语言为了能够记录数据,保存数据,所以就有了数据类型。
char //字符数据类型
short //短整型
int //整形
long //长整型
long long //更长的整形
float //单精度浮点数
double //双精度浮点数
!!!C语言中没有字符串类型。
实现各种类型的字节大小的输出程序如下:
char:1字节;short:2字节;int:4字节;long:4字节;
Long long:8字节;float:4字节;double:8字节;
注意:数据类型是为了定义变量,并决定数据的大小。然后由变量保存数据!数据不是保存在数据类型中!
(3)变量与常量
不变的值,C语言中用常量的概念来表示,变化的值C语言中用变量来表示。
变量的分类:全局变量和临时变量。
这种在main函数的内部称为临时变量==局部变量==自动变量,在main函数的外面就是全局变量。(当局部变量和全局变量同名的时候,局部变量优先)
(3.1)变量的作用域和生命周期
局部变量的作用域是变量所在的局部范围。(代码块中的变量)
全局变量作用域在整个工程。
局部变量的生命周期是进入作用域开始,出作用域结束。
全局变量的生命周期是整个程序的生命周期。
由这个例子可以知道,在for循环内定义的j在出了循环后就不存在,它的作用域和生命周期就是花括号所包围住的代码块中!i是在main中定义的所以有效。
尽量少定义全局变量!
(3.2)常量
字面常量:看到什么就是什么的,不能被修改。
宏定义的常量
const 定义的常变量
枚举常量
(4)字符串+转义字符+注释
C语言中 'a' 是字符
"a"是字符串(默认会以\0结尾)
C90标准中,没有字符串类型,但是有字符串
有保存字符串的方案:1,字符数组保存字符串
2,利用指针
转义:通过\完成,本质:特殊转字面,字面转特殊。
回车\r 和换行\n不一样
区别:回车 回到最顶头,换行是换一行。
\n一般是回车加换行
\r是回车删除前面的内容重新输入
\r的一个倒计时程序: