嵌入式第三天 今日学习内容C语言变量规范、表达式与类型转换、全套运算符、优先级规则以及字符IO、scanf/printf格式化输入输出同时弄懂了左值右值、内存赋值规则并且可以用getchar/putchar完成字符处理的实操。一、变量的定义、命名与初始化规则变量本质在内存中开辟一块对应数据类型的存储空间通过变量名访问这块内存。使用原则先定义后使用。命名规范只能由字母、数字、下划线组成不能以数字开头禁止使用C语言关键字尽量见名知意推荐驼峰命名法或者下划线命名不要和库函数重名。初始化与赋值定义变量的时候赋初值叫做初始化定义完成之后再用修改数值叫做赋值。严禁使用未初始化的变量它里面存放的是内存随机垃圾值。各类变量写法short/int/long整型、float/double浮点型、char字符型、bool布尔型各自的定义格式。二、表达式、隐式/强制类型转换表达式运算符把常量、变量拼接而成任何表达式都具备对应的数据类型和结果值。混合运算的转换规则低精度自动向高精度转换优先级从高到低double float 无符号长整型 long int char/short• char、short参与运算时会自动提升为int• float运算时自动提升成double计算• 整型赋值给浮点型扩展精度浮点赋值给整型直接舍弃小数部分。强制类型转换(类型)变量可以人为改变数据类型但是不会修改变量本身内存的值。特殊赋值规则大小空间互相赋值时小数据放进大空间会进行符号扩展大数据存入小空间会直接截断低位极易出现正负颠倒的问题。三、各类运算符详解算术运算符 - * / % –• %取余运算符只允许整型使用浮点不能取模• 前置先自增再取值后置先取值再自增二者只能操作变量不能作用于常量。赋值运算符、、-、*、/、%分清左值和右值只有变量可以放在等号左边左值常量、表达式只能做右值。逗号运算符从左往右依次执行所有式子最终结果取最右侧表达式的值。sizeof运算符用来计算变量/数据类型占用的内存字节数编译阶段完成计算不会运行代码。运算符优先级口诀括号 单目运算符 双目运算符 三目运算符 赋值运算符 逗号运算符双目内部优先级算术 移位 关系 位运算 逻辑运算。四、字符IO与格式化输入输出函数头文件统一使用 #include stdio.h字符专用函数• putchar(字符)向终端输出单个字符• getchar()从键盘读取一个字符返回值为该字符的ASCII码利用这两个函数可以实现小写字母转大写、字符打印等功能。格式化IOscanf() 和 printf()• printf按照格式符输出内容%d整型、%lf双精度浮点、%f单精度float、%c字符• scanf接收键盘输入变量前必须加取地址符格式串内不要随意添加\n、空格极易造成输入阻塞之前踩过全角百分号导致读取失败的坑后续全部使用英文半角符号。字符串IOgets()、puts()了解其用法以及gets存在的缓冲区安全隐患

相关新闻

最新新闻

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现 【免费下载链接】serenity The Serenity Operating System 🐞 项目地址: https://gitcode.com/GitHub_Trending/se/serenity 导读 本文以 getopt(3) 手册 为核心&a…

2026/9/23 4:54:42
轻量服务器还是ECS?大促云服务器选购与避坑实战指南

轻量服务器还是ECS?大促云服务器选购与避坑实战指南

每年大促节点,群里永远有人在问同一个问题:“38元的轻量服务器到底怎么抢?为什么我每次点进去都是已售罄?68元直购和99元的ECS我到底选哪个?”作为一个常年帮团队和自己采购云服务器的老用户,我太清楚这种纠…

2026/9/23 8:01:55
为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南

为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南

为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南 【免费下载链接】agents Multi-harness agentic plugin marketplace for Claude Code, Codex, Cursor, OpenCode, GitHub Copilot, and Google Antigravity 项目地址:…

2026/9/23 8:02:11
PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署

PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署

PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署 【免费下载链接】PaddleOCR Turn any PDF or image document into structured data for your AI. A powerful, lightweight OCR toolkit that bridges the gap between i…

2026/9/23 8:01:38
Spring源码解析:构造器注入的类型转换与候选匹配机制

Spring源码解析:构造器注入的类型转换与候选匹配机制

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/23 8:01:21
openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由

openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由

openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由 【免费下载链接】openai-agents-python A lightweight, powerful framework for multi-agent workflows 项目地址: https://gitcode.com/GitHub_Trending/op/openai-agents-pyth…

2026/9/23 8:02:28

日新闻

周新闻