';do';C中的关键字

';do';C中的关键字,c,keyword,C,Keyword,do是C语言中的一个关键字,我所看到的只是它只与一起使用,而则是。所以我的问题是do可以单独使用而不使用while 如果是,怎么做?否。它不能。 更准确地说,这是政府必须说的: 6.8.5迭代语句 语法 迭代语句: while(expression)语句 do语句while(表达式) for(expressionopt;expressionopt;expressionopt)语句 for(声明expressionopt;expressionopt)语句 顺便说一句,do语句最常用于提供一些语法糖

do
是C语言中的一个关键字,我所看到的只是它只与
一起使用,而
则是。所以我的问题是
do
可以单独使用而不使用
while

如果是,怎么做?

否。它不能。 更准确地说,这是政府必须说的:

6.8.5迭代语句 语法 迭代语句:
while(expression)语句
do语句while(表达式)
for(expressionopt;expressionopt;expressionopt)语句
for(声明expressionopt;expressionopt)语句


顺便说一句,do语句最常用于提供一些语法糖分,并将预处理器宏用作普通的C函数:

#define MY_MACRO_FNC(x) do { whatever(x); } while(0)
/* later in you call this macros as */
MY_MACRO_FNC(x);

do是do while循环中使用的关键字。 使用do while循环的一般语法为: 做{//逻辑
}while(条件)

来自规范:你想在这里做什么?如果您需要的是限定某个变量声明的范围,那么简单的{}块就可以了。而是
do语句while(expr)@H2CO3:是的,这不是最好的配方。我删除了它,该标准比我做得更好。读者注意:如果在
声明
表达式之间缺少分号,那是因为分号实际上是
声明
的一部分。为什么需要在该宏中使用循环?因此可以添加分号。不需要一个函数调用,想象一下你有几行必须用花括号括起来的代码,这能回答问题吗?