《玩透嵌入式C的角角落落》当你需要循环体至少执行一次时,选择do

CSDN博客主页
ID : Eterlove
一笔一画,记录我的学习生活!站在巨人的肩上Standing on Shoulders
of Giants!

该文章为原创,转载请注明出处和作者!

当你需要循环体至少执行一次时,选择do-----《C与指针》

1.概念

       平时我们常用while语句来表达我们的”先判断后循环“的思想,此外while语句还有一位兄弟叫做do语句,或者叫do-while,他显著特点是“先循环后判断”,至少会执行一次循环体。
do的语法为:

do{
      statement   //为循环体
}while(expresssion);  //expresssion测试表达式,其值为1或0
2.do语句的执行过程

在这里插入图片描述
什么时候不用while()语句,而使用do-while语句呢?
当你需要循环体至少执行一次时,选择do

3.请记得带上;

       我想要强调的是,很多人没有常用do-while语句的习惯,但他们不得不用do-while语句来处理问题时,会常常犯一个低级错误-------忘记了一个重要的分号 while(expresssion);

在单片机USART调试发送数据过程中,常常用到这个do-while语句

void usart_SendString(u8 *str)
{
	u8 index=0;
	do
	{
		USART_SendData(USART2,str[index]);				//发送数据
		while(USART_GetFlagStatus(USART2,USART_FLAG_TXE)==RESET);
		//若数据没有发送完成,则会死在while语句里面!
		index++;
	}while(str[index] != 0);						//检查字符串结束标志
}
	while(USART_GetFlagStatus(USART2,USART_FLAG_TXE)==RESET);
	//其他人还偏爱于另一种写法:
	while(!USART_GetFlagStatus(USART2,USART_FLAG_TXE));
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嵌入式历练者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值