目录
1.C语言简介
1.1什么是C语言?
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。
1.2第一个C语言程序
输出“hello world”
#include<stdio.h>//包含一个stdio.h的文件,stdio.h是标准输入输出库
int main()//main函数是程序的入口,有且只有一个
{
printf("hello world\n");//printf函数:打印函数,C语言本身提供的库函数
return 0;
}
注释:用来解释代码,也可以注释一些不需要的代码。ctrl+K+C注释,ctrl+K+U取消注释
2.如何写C语言代码
- 编译器:VS2019......
- 创建项目(项目名称不使用汉语,不要加特殊字符或空格,例:text_3_7;项目存储位置创建 一个专用文件夹)
- 创建源文件(在C语言中,一般创建的是.c源文件;步骤:源文件—>添加—>新建项—>c++文件—>输入名称—>添加)
- 写代码
- 编译连接运行(快捷键:ctrl+(fn)+f5; 调试:(fn)+f10)
3.数据类型
- char:字符数据类型
- int:整形
- short:短整形
- long:长整形
- long long:更长的整形
- float:单精度浮点型
- double:双精度浮点型
注:C语言提供的类型叫内置类型;自己创造的类型叫自定义类型
4.计算机中的单位
- bit:比特位
- byte:字节
- KB:千字节(1KB=1024B)
- MB:兆字节
- GB:千兆字节
- ......
注:sizeof是用来计算一个类型大小的;返回的是size_t无符号整形,输出用%u或者%
5.变量
5.1定义变量
注:int定义的a是一个整形变量,float定义的b是一个浮点型变量,char定义的c是一个字符型变量
5.2全局变量
全局变量定义在大括号外部
5.3局部变量
局部变量定义在大括号内部,并不单指main函数的大括号内
注:一般全局变量与局部变量名字不同,若相同,局部变量优先
5.4变量的作用域和生命周期
- 作用域:限定变量名字的可用性的代码范围就是变量的作用域
局部变量的作用域:其所在的局部范围
全局变量的作用域:整个工程(可跨文件,用extern来申明外部符号)
- 生命周期:变量的创建到销毁的一个时间段
局部变量的生命周期:进入作用域生命周期开始,出作用域生命周期结束
全局变量的生命周期:整个程序的生命周期
6.常量
6.1字面常量
包括整形常量,浮点型常量,字符常量,字符串常量(常用于赋值)
6.2const修饰的常变量
const是C语言关键字,const表示常属性
可以看出程序报错,因为num被const修饰具有常属性,不可被修改。但num本质上任为变量,不可用来定义数组
6.3#define定义的标识符常量
可以 看出,程序运行成功,#define定义的标识符常量可以用来定义数组大小
6.4枚举常量
常用于定义能一一列举的常量:性别,三原色,星期.......
7.字符串
定义:用双引号引起来的一串字符
#include<stdio.h>
#include<string.h>//strlen库函数引用要包含的头文件
int main()
{
char arr1[] = "abc";//"abc"是一个字符串,字符串结束的标志是\0
char arr2[] = { 'a','b','c' };
printf("%s\n", arr1);//%s用来输出字符串
printf("%s\n", arr2);
printf("%d %d", strlen(arr1), strlen(arr2));//strlen用来求字符串长度
return 0;
}
注:“abc”是一个字符串,包含了\0,所以打印abc,输出字符串长度是3;
strelen(arr1)计算的是\0之前字符的长度,打印的也是\0之前的所有字符
8.转义字符
\a | 警告字符,蜂鸣 |
\b | 退格符 |
\f | 进纸符 |
\n | 换行 |
\r | 回车 |
\t | 水平制表符 |
\v | 垂直制表符 |
\ddd | ddd表示1~3个八进制数字,如\130 |
\xdd | dd表示俩个十六进制数字,如\x30 |
注:c: \t est \121 ,\t是一个字符,\121是一个字符
9.ASCII码 ![](https://i-blog.csdnimg.cn/blog_migrate/8c8340c9d50212c69f8ff838ac9b4d46.png)
常用:‘0’——48,‘A’——65,‘a’——97