C基础
2023-08-19 09:51:13 2 举报
AI智能生成
C基础知识点
作者其他创作
大纲/内容
定义一个循环变量for(表达式1;表达式2;表达式3){ 语句块;(循环体)}表达式1:给循环变量赋初始值表达式2:循环条件也是结束循环的条件表达式3:递增或递减
定义两个循环变量for(表达式1;表达式2;表达式3){ for(表达式4;表达式5;表达式6){ 语句块;(循环体)}}
嵌套结构
for循环
定义一个循环变量while(判断条件){ 语句块; 递增或递减;}
do{ 语句块;}while(判断条件)
do while
while循环
break:直接跳出整个循环(程序)
continue:跳出循环,只跳出当前循环
循环控制语句
while(1){}
while(1) ;
for(;;){}
死循环
循环语句
if(表达式){ 语句块1;}else{ 语句块2;}
if else
switch(表达式或常量){case 常量1: 语句块1; break;case 常量2: 语句块2; break;……defeult: 语句块N; break;}
switch case
分支语句
int a = 5;float b = (float)a / 2;printf(\"%f\\
char a = 's';printf(\"%f\\
强制转换
int getchar(void)功能:从终端获取(输入)一个字符参数:无返回值:一个int类型的数据,输入字符的ASCII值
getchar
int putchar(int c)功能:向终端输出一个字符参数:要输出字符的ASCII码值 可以是字符返回值:要输出字符的ASCII码值
putchar
按照字符输入输出
printf
scanf
空格 可以回收一个或多个字符(空格 回车 tab键)%*c 只能回收一个字符
回收垃圾字符
按照格式输入输出
输入输出
概念:在程序运行当中不会发生变化的量
字符型常量
字符串常量
整型常量
浮点型常量
指数常量
标识常量
分类
常量
鼠标打开
Ctrl Alt t
Ctrl Shift n
打开
鼠标关闭
Ctrl d
输入 exit
关闭
打开关闭终端的方式
查看
新建
复制
剪切
路径切换
终端的常用命令
放大终端:Ctrl Shift +
缩小终端:Ctrl -
历史命令:上下键
清屏:Ctrl l
自动补全:Tab
常用快捷键
插入模式
复制:yy 复制光标所在行 Nyy 复制多行
粘贴:p
删除:dd Ndd 删除多行
反撤销:Ctrl r
光标回到行首:gg
光标回到末尾:G
行首:0
行尾:$
整理代码:gg=G
命令行模式
保存:w
退出:q
保存并退出:wq
强制退出不保存:q!
分屏:vsp
查找:/str
替换:s/str/str2 将光标所在行第一个符合查找的内容进行替换全部替换:%s/str/str2/g
取消高亮:nohl
显示行号:set nu
取消行号:set nonu
底行模式
vi编辑器
Linux命令
命令:gcc -E hello.c -o hello.i删除文件中的注释 展开头文件 替换宏定义
预处理
命令:gcc -S hello.i -o hello.s检查语法错误 有错报错 没有错误生成汇编语言
编译
命令:gcc -c hello.s -o hello.o将汇编语言转化成二进制的文件
汇编
命令:gcc hello.o -o hello链接库文件,生成可执行文件
链接
gcc编译器
存储类型:auto自动 static静态 extern引用外部 register寄存器数据类型:char int long short float double signed有符号 unsigned无符号构造类型:struct union enum选择类型:if else switch case default循环类型:for while goto do break continue其它 :void typedef const sizeof return volatile
关键字
定义:用于标识变量 宏定义 函数名
命名规范:由数字,字母,下划线组成不能以数字开头不能和关键字重名见名知义
标识符
+ - * / % ++ --
算术运算符
&& || !
逻辑运算符
& | ~ ^ << >>
置1公式:a|(1<<n)
置0公式:a&(~(1<<n))
位运算符
> < >= <= == !=
关系运算符
= += -= *= /=
赋值运算符
? : 格式:表达式1?表达式2:表达式3
三目运算符
单目运算:! ~ ++ --算术运算:* / % + -移位运算:<< >>关系运算:> < >= <= == !=位与运算:&异或运算:^ |逻辑运算:&& ||条件运算:?:赋值运算:= += -= *=....口诀:单算移关与 异或逻条赋 单目运算,从右向左运算
运算符的优先级
运算符
换行 空格 tab
分隔符
, ; ( ) { } [ ]
标点符
词法符号
从右往左三位一组,三个二进制数可以表示一个八进制数
转八进制
101100——》0*20+0*21+1*22+1*23+0*24+1*25=4+8+32=44
转十进制
从右往左四位一组,四个二进制数可以表示一个十六进制数
转十六进制
二进制
一个八进制的数可以用3位二进制的数表示
转二进制
以0开头
八进制
短除法:对2进行倒取余
拆分发:64——》26 + 21
计算器演算
十进制
一个十六进制的数可以用4位二进制表示
0-9 a-f
以0x开头
十六进制
ASCII值 在终端输入man ascii查看ASCII表,按q键退出
非数值型的数据
进制之间的转换
概念:在程序运行当中会发生变化的量
定义格式:存储类型 数据类型 变量名
全局变量:在函数外声明的变量,变量可以在全局使用
局部变量:在函数内声明的变量,只能在函数内部使用
局部变量 全局变量定义位置 函数内部 函数外部作用域 在声明函数内可以使用 全局可用初始值(未赋值) 随机值 值为0存储位置 栈区 全局区生命周期 和定义函数共存亡 和整个程序共存亡
全局变量和局部变量的区别?
cahr 字符型 1个字节int 整型 4个字节short 短整型 2个字节long 长整型 4个字节float 单精度浮点型 4个字节double 双精度浮点型 8个字节
数据类型
变量
自由主题
C基础
0 条评论
回复 删除
下一页