1.转义字符
\? 在书写连续多个问号时使用,防止他们被解析成三字母词
\' 用于表示字符常量’
\\ 用于表示一个反斜杠,防止它被解释位一个转义序列符
\a 警告字符,蜂鸣
\b 退格符
\n 换行
\r回车
\t水平制表符
\v垂直制表符
\ddd ddd表示1~3个八进制的数字 如:\130X
\xddd ddd表示3个十六进制数字 如:\x030
笔试题:
int main() {
printf("%d\n", strlen("abcdef")); //6
printf("%d\n", strlen("c:\test\32\test.c")); //13
system("pause");
return 0;
}
数据类型
char 字符数据类型
short 短整型
int 整形
long 长整形
long long 更长的整形
float 单精度浮点型
duoble 双精度浮点型
int main() {
printf("%d\n", sizeof(char));//1个字节
printf("%d\n", sizeof(short));//2个
printf("%d\n", sizeof(int));//4个
printf("%d\n", sizeof(long));//4个
printf("%d\n", sizeof(long long));//8个
printf("%d\n", sizeof(float));//4个
printf("%d\n", sizeof(double));//8个
printf("%d\n", sizeof(long double));//8个
system("pause");
return 0;
}
常量
1.字面常量 如:3.14 ‘w’ '\n'
2.const定义的常量 :当const修饰一个标识符的时候 这个标识符虽然是一个变量,但是它具有常量的属性
不能被直接改变
3.#define定义的标识符常量
用法:
#define PAI 3.1415926
int main() {
int radius = 0;//半径
double area = PAI*radius*radius;//圆面积的计算
system("pause");
return 0;
}
4.枚举常量
枚举关键字:enum
#include<stdio.h>
enum Sex {
male,
female,
secret
};
int main(){
printf("%d\n",male);//0
printf("%d\n", female);//1
printf("%d\n", secret);//2
system("pause");
return 0;
}
变量
变量的命名规则:c语言规定必须以字母下划线_开头 后面可以跟若干个字母数子下划线,但不能有其他字符
c的关键字:
auto自动变量 自动创建自动销毁
register//寄存器关键字 建议将修饰的变量存储到寄存器中
寄存器大小:4byte*100
高速缓存:8M
内存:4G 8G 16G
硬盘:500G
signed//有符号的 unsigned 无符号的
typedef//类型重命名
typedef unsigned int uint;
int main() {
uint a = 0;
system("pause");
return 0;
}
union联合体 共用体
volatile//保证内存的可见性
int main() {
volatile const int num = 0;//保证内存的可见性
int *p = (int*)#
*p = 20;
printf("%d", num);
system("pause");
return 0;
}
变量的分类:
-局部变量 : 变量出现在局部范围(代码块内部)内称为局部变量
-全局变量 : 变量出现在所有代码块外部,称为全局变量
static修饰变量:
修局部变量: 局部变量生命周期发生变化
修全局变量: 只能在自己源文件内使用,作用域发生变化
表达式属性:
1值属性 2类型属性
c语言特点:
C语言 高效 灵活 功能丰富 表达力强和较高的可移植性
c语言特色:
结构化程序设计 具有变量域
结构体
c语言传参均是值传递