基础知识
- 语言机制:模块化 结构化: 先结构、后补充 面向过程
- include 包含、打开模块
- std: 标准的 io输入输出 .h头尾
- main 主函数 约定的执行入口
- c / c++编译 c编译较为松散
语句
- ; 流程占位
- {;;;} 复合语句 一条逻辑
printf 格式化打印
- f: format 格式 模板技术 模板 = 固定 + 可变
- %[flags][width][.precision][length]specifier
- flag 补齐/对齐方式
- width 占位宽度
- .precision 小数位数
- specifier 类型符号
- length 按多少位显示
变量 variable
定义变量:类型 变量名
命名要求
语法规则
- 变量名首字母必须是字母、下划线、或美元符号
- 变量名只能是字母、数字、下划线或者美元符号,之间不能有空格
- 变量名不能使用编程语言的保留字
开发规范
- 匈牙利命名法
- 大、小驼峰
使用
- 赋值、取值、增值
面向过程:控制的逻辑
先定义再使用
规范:
- 一个变量一行
- 尽量给初始值,不用默认
- 最好加注释
scanf 输入
标准库 函数
scan 扫描 format 格式化
& 计算得到变量的实际内存地址
scanf后由键盘输入,所有内容将被存放到键盘输入缓冲区,之后由格式化扫描(%d等),依次扫描,扫描一个干掉一个,发现非法格式时立即停止读入。
执行原理
预处理期:人能看懂的、编写的语言叫做高级语言,接近人类,远离机器,并不能真正执行。
编译期:由编译器转换为汇编语言(符号语言),01语言的助记符号,每一个机器语言都有对应的助记符号。
汇编期:由汇编器将汇编语言翻译为机器语言(01指令),生成.obj文件(目标文件)。(报语法错误)
连接期:把用到的对应的库函数找到,和obj文件一起打包连接。
执行期:生成exe可执行文件。
报错知识
- MSVCRTD: MS微软 VC visualC++ RT runtime D debug
- _main已在...中定义 main重定义 谁运行就谁叫main 一个项目中只能有一个main
- scanf: This function or variable may be unsafe.... 安全隐患 计算内存地址的都有安全隐患, 用 scanf_s代替,微软独有安全函数。
- C2143: C compiler 编译器。
- LNK: 连接错误。
杂项
计算机:计算资源 cpu memory->内存
C语言是强类型语言
全局变量会拥有默认值0,局部变量没有。