网站首页 > 技术文章 正文
for循环是一个常见的重复结构,允许高效率的执行一个循环就可以执行一定数目的次数,本文我们对for循环的基本知识做一个梳理。
一、For循环的基本概念
图1 for循环的基本语法
For循环的基本语法结构,如图1所示。其中,有三个表达式用分号隔开:
第一个表达式是循环计数器变量的初始化;
第二个表达式是测试循环是否满足的条件判断,如果条件为真,那么就会继续执行循环;
第三个表达式是每一次循环结束时,改变循环计数器的变量。
对于这个循环结构,三个表达式都可以缺失,但需要注意的是,当缺少表达式1和表达式3时,循环就无法正确进行了,但是缺少表达式2时可以进行无限次数循环。
有一种特殊情况是,三个表达式都缺失,这时候是进行无限次数循环的,此时可以使用break来离开这个循环。
嵌入式物联网需要学的东西真的非常多,千万不要学错了路线和内容,导致工资要不上去!
无偿分享大家一个资料包,差不多150多G。里面学习内容、面经、项目都比较新也比较全!某鱼上买估计至少要好几十。
点击这里找小助理0元领取:加微信领取资料
二、字符串打印函数的基本概念
图2 printf函数的基本语法
打印控制字符串到标准输出终端是一个常见的调试功能,比如PC终端或者MCU的UART终端等。在MCU使用中可以使用printf函数将需要的字符串数据打印在UART终端上。在这个基本语法结构中,除了控制字符串之外,所有逗号分开的数据是可选的,参数可以是变量或者嵌入到控制字符串中的数据。
另外一个元素是控制字符串中的占位符,它表示参数值应该插入的位置,同时指明打印字符串中的数据使用的格式,值得注意的是,printf函数需要大量的内存,所以一般仅用于调试功能。
图3 printf语句基本结构
如图3所示,是一个基本的printf的语句结构,可以看到它需要输出a和b两个变量的值,这两个变量采用10进制整数的格式,用%d表示,并且在显示完一个数据之后输出一个\n换行字符。%d就是需要插入两个变量参数的位置,第一个%d需要被a数据所代替,第二个%d需要被b数据代替。
图4 常见格式标识符
常见的printf函数中使用的格式字符,如图4所示。
三、在MCU中使用字符串打印输出for循环变量输出
图5 MCC中配置UART外设
此处采用9600的波特率,将printf重定位到UART,和MCU相关的其它外设此处由于篇幅所限不做说明。
图6 for循环中的变量打印输出函数定义
图7 主程序中重复打印for循环变量输出
图8 串口打印输出结果显示
上述内容简要说明了通过printf函数无限次打印for循环结果。
原文链接:https://mp.weixin.qq.com/s/czC6lFmz-IpRUqzKm7-iug
转载自:嵌入式微处理器
原文链接:浅谈C语言基础知识之for循环
本文来源网络,免费传达知识,版权归原作者所有。如涉及作品版权问题,请联系我进行删除。
猜你喜欢
- 2024-11-27 用for循环写一个九九乘法表
- 2024-11-27 三菱plc编程,FOR循环指令详解
- 2024-11-27 通过几个事例,就可以说明 for...of 循环在 JS 是不可或缺
- 2024-11-27 年近半百自学Python之流程控制break和continue
- 2024-11-27 C语言程序设计(谭浩强第五版) 第5章 循环结构程序设计 习题解析答案
- 2024-11-27 C语言for循环语句使用形式总结
- 2024-11-27 C# break和continue区别
- 2024-11-27 VBA基本语法之For循环结构,都有什么含义,具体该怎么使用?
- 2024-11-27 C语言(五):for,break,continue
- 2024-11-27 C语言for循环小例子
- 标签列表
-
- content-disposition (47)
- nth-child (56)
- math.pow (44)
- 原型和原型链 (63)
- canvas mdn (36)
- css @media (49)
- promise mdn (39)
- readasdataurl (52)
- if-modified-since (49)
- css ::after (50)
- border-image-slice (40)
- flex mdn (37)
- .join (41)
- function.apply (60)
- input type number (64)
- weakmap (62)
- js arguments (45)
- js delete方法 (61)
- blob type (44)
- math.max.apply (51)
- js (44)
- firefox 3 (47)
- cssbox-sizing (52)
- js删除 (49)
- js for continue (56)
- 最新留言
-