《玩透嵌入式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));

猜你喜欢

转载自blog.csdn.net/Eterlove/article/details/122672628
今日推荐