- 一. 前言
- 二. 第一个C语言程序
- 三. 数据类型
- 四. 变量和常量
- a)变量
- 1)局部变量
- 2)全局变量
- b)常量
- 1)字面常量(相当于直接写)
- 2)const修饰的常量
- 3)#define定义的标识符常量
- 4)枚举常量
- 五. 字符串+转义字符+注释
- a)字符串
- 1)字符数组
- b)转义字符
- c)注释(推荐一本书《高质量C/C++编程指南》林锐PDF)
- 六. 选择语句(分支语句)
- a)if语句
- b)switch语句(初学,后补充)
- 七. 循环语句
- a)while语句
- b)for语句(初学,后补充)
- c)do ... while语句(初学,后补充)
- 八. 函数
- 九. 数组
- 十. 操作符
- a)算术操作符
- b)移位操作符
- c)位操作符
- 1)&:按位与
- 2)|:按位或
- 3)^:按位异或
- d)赋值操作符
- e)单目操作符
- 1)!逻辑反操作
- 2)sizeof
- 3)~ 按(二进制)位取法
- 4)++ 前置、后置++
- 5)-- 前置、后置 --
- 6)(类型)强制类型转换
- f)关系操作符
- g)逻辑操作符
- h)条件操作符
- i)逗号表达式
- j)下标引用、函数调用和结构成员
- 1)下标引用[]
- 2)函数调用()
- 十一. 常见关键字(讲几个,后期补充)
- a)auto
- b)extern
- c)register
- d)signed
- e)unsigned
- f)static
- 1)static修饰局部变量
- 2)static修饰全局变量
- 3)static修饰函数
- g)union
- h)void
- i)typedef
- 十二. define定义常量和宏
- a)define定义常量
- b)define定义宏
- 十三. 指针
- 十四. 结构体
- 十五. 补充
- a)scanf函数
- 十六. 最后说明
本文是在作者初学C语言后的整理的资料,在之后深入学习C语言后会进行补充说明
二. 第一个C语言程序#includeint main() { printf("初学C语言"); return 0; }
这里说明下:
-
由于printf的使用,需要引入头文件#include
。头文件就是为了这个printf函数的实现 -
在运行程序的时候,如果使用的是VS2013版本的,会发现反应很快,输出一闪而过,这时候就需要设置一下为了看到代码运行的结果。如果用的是VS2013以上的版本,则不需要设置,都已经配置好了。将其子系统那块改成控制台即可。
-
一个工程中有且仅有一个main函数
- 一个工程中可以有多个.c文件
- 多个.c文件只能有一个main函数
| 代码 | 数据类型 |
|---|---|
| char | 字符数据类型 |
| short | 短整型 |
| int | 整型 |
| long | 长整型 |
| long long | 更长的整型 |
| float | 单精度浮点数 |
| double | 双精度浮点数 |
-
每种类型的大小(用sizeof来计算,单位byte)
-
注:C语言标准:sizeof(long) >= sizeof(int)
-
注:sizeof 是关键字,操作符,不是函数
-
计算机中的单位
| English | 名称 | 换算 |
|---|---|---|
| bit | 比特 | |
| byte | 字节 | 1 byte = 8 bit |
| KB | 千字节 | 1 KB = 1024 byte |
| MB | 兆字节 | 1 MB = 1024 KB |
| GB | 吉字节 | 1 GB = 1024 MB |
| TB | 太字节 | 1 TB = 1024 GB |
| PB | Petabyte | 1 PB = 1024 TB |
- 计算机中识别二进制 - 0和1
- 识别八进制 - 0-7
- 识别十进制 - 0-9
- 定义:有些数据一定可变:工资、年龄、体重
- 变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
- 局部变量的作用域是变量所在的局部范围
- 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束
- 全局变量的作用域是整个工程
- 全局变量的生命周期是:整个程序的生命周期
注意:
- 局部变量global变量的定义没有什么问题
- 当局部变量和全局变量同名的时候,局部变量优先使用
- 定义:有些数据一定不变:血型、性别、圆周率
- const修饰的常变量不能被修改,因为const定义的基本类型的变量保存的是实际的内存地址, 内存地址不能动
- pai 被称为 const 修饰的常变量, const 修饰的常变量 在C语言中只是在语法层面限制了变量 pai 不能直接被 改变,但是 pai 本质上还是一个变量的,所以叫常变量
- #define定义的标识符不占内存,只是一个临时 的符号,预编译后这个符号就不存在了
- 枚举常量的默认是从0开始,依次向下递增1的
- 定义:一串字符,用双引号括起来的一串字符
- 字符串的结束标志是 的转义字符
- 计算字符串长度的时候, 是结束标志,不算作字符串的内容
- 定义: 字符数组是一组相同类型的元素
- 当方括号里面不写这个数组有几个元素的时候, 会根据后面数据的大小自动分配


