1.什么是C语言?
C语言是一门通用计算机编程语言,广泛应用于底层开发。
由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。
2.数据类型
|
|
| 大小(字节) |
| char | 字符数据类型 | 1 |
| short | 短整型 | 2 |
| int | 整型 | 4 |
| long | 长整型 | 4 |
| long long | 更长的整型 | 8 |
| float | 单精度浮点数 | 4 |
| double | 双精度浮点数 | 8 |
3.变量和常量
| 变量 | 作用域 | 生命周期 |
| 局部变量 | 变量所在的局部范围 | 进入作用域生命周期开始,出作用域生命周期结束 |
| 全局变量 | 整个工程 | 整个程序的生命周期 |
常量:
- 字面常量
- const修饰的常变量
- #define定义的标识符常量
- 枚举常量(enum)
4.字符串、转义字符、注释
字符串:“hello world ! ” - 双引号引起来的一串字符为字符串字面值,或者简称字符串 。
字符串的结束标志是一个 的转义字符。在计算字符串长度的时候 是结束标志,不算作字符串内容。
转义字符:转义字符顾名思义就是转变意思。
| ? | 在书写连续多个问号时使用,防止他们被解析成三字母词 |
| ' | 用于表示字符常量 ' |
| " | 用于表示一个字符串内部的双引号 |
| \ | 用于表示一个反斜杠,防止它被解释为一个转义序列符 |
| a | 警告字符,蜂鸣 |
| b | 退格符 |
| f | 进纸符 |
| n | 换行 |
| r | 回车 |
| t | 水平制表符 |
| v | 垂直制表符 |
| ddd | ddd表示1~3个八进制的数字。 如: 130 X |
| xdd | dd表示2个十六进制数字。 如: x30 0 |
注释:代码中有不需要的代码可以直接删除,也可以注释掉
代码中有些代码比较难懂,可以加一下注释文字
5.选择语句、循环语句
选择语句(分支语句):if语句、switch语句
循环语句:while语句、for语句、do…while语句
6.函数
函数的特点就是简化代码,代码复用。
7.数组
int arr[10] = {1,2,3,4,5,6,7,8,9,10} --> 定义一个整型数组,最多放10个元素
C语言规定:数组的每个元素都有一个下标,下标是从0开始的
数组的使用:
8.操作符
| 算数操作符 | + | - | * | / | % |
| 加 | 减 | 乘 | 除 | 求余 |
| 移位操作符 | >> | << |
| 右移运算符 | 左移运算符 |
| 位操作符 | & | | | ^ |
| 按位与 | 按位或 | 按位异或 |
| 赋值操作符 | |
| = | 赋值 |
| += | 加后赋值 |
| -= | 减后赋值 |
| *= | 乘后赋值 |
| /= | 除后赋值 |
| &= | 按位与后赋值 |
| ^= | 按位异或后赋值 |
| |= | 按位或后赋值 |
| >>= | 右移后赋值 |
| <<= | 左移后赋值 |
| 单目操作符 | |
| ! | 逻辑反操作 |
| - | 负值 |
| + | 正值 |
| & | 取地址 |
| sizeof | 操作数的类型长度(以字节为单位) |
| ~ | 对一个数的二进制按位取反 |
| -- | 前置、后置-- |
| ++ | 前置、后置++ |
| * | 间接访问操作符(解引用操作符) |
| (类型) | 强制类型转换 |
| 关系操作符 | > | >= | < | <= | != | == |
| 大于 | 大于等于 | 小于 | 小于等于 | 不等于 | 等于 |
| 逻辑操作符 | && | || |
| 逻辑与 | 逻辑或 |
| 条件操作符 | exp1 ? exp2 : exp3 |
| exp1成立,执行exp2;exp1不成立,执行exp3 |
| 逗号表达式 | exp1, exp2, exp3, … , expN |
| 从左向右执行,先计算exp1的值,再计算exp2的值,依次往后计算,直到计算出expN的值作为1到n整个表达式的值,其值的类型和表达式n的类型相同 |
| 下标引用、函数调用和结构成员 | |
| [ ] | 例:arr[6] |
| ( ) | 例:Max(a,b) |
| . | 结构体,共用体类型访问元素用 |
| -> | 结构体指针 -> 成员变量名 |
9.常见关键字
| auto | break | case | char | const | continue | default | do |
| double | else | enum | extern | float | for | goto | if |
| int | long | register | return | short | signed | sizeof | static |
| struct | switch | typedef | union | unsigned | void | volatile | while |
typedef:类型定义,也可理解为类型重命名
static:用来修饰变量和函数的
1. 修饰局部变量 - 称为静态局部变量
2. 修饰全局变量 - 称为静态全局变量
3. 修饰函数 - 称为静态函数
10.#define定义常量和宏
11.指针
内存:
内存是电脑上特别重要的存储器,计算机中程序的运行都是在内存中进行的 。 所以为了有效的使用内存,就把内存划分成一个个小的内存单元,每个内存单元的大小是1个字节。 为了能够有效的访问到内存的每个单元,就给内存单元进行了编号,这些编号被称为该内存单元的地址。变量是创建内存中的(在内存中分配空间的),每个内存单元都有地址,所以变量也是有地址的。 那地址如何存储,需要定义指针变量。
指针变量的大小:指针大小在32位平台是4个字节,64位平台是8个字节。
12.结构体
结构体是C语言中特别重要的知识点,结构体使得C语言有能力描述复杂类型。


![[C语言 ] 初始C语言 [C语言 ] 初始C语言](http://www.mshxw.com/aiimages/31/934178.png)
