什么是C中的null语句?
我想确切地知道,在C编程语言中什么是空语句?并解释它的一个典型用法 我找到了下面的代码段什么是C中的null语句?,c,null,C,Null,我想确切地知道,在C编程语言中什么是空语句?并解释它的一个典型用法 我找到了下面的代码段 for (j=6; j>0; j++) ; 及 从msdn的页面: “null语句”是缺少表达式的表达式语句。当语言的语法需要语句但不需要表达式求值时,它非常有用。它由分号组成 Null语句通常用作迭代语句中的占位符,或者用作在复合语句或函数末尾放置标签的语句 了解更多: 并解释它的一个典型用法 当您要查找字符串中某个字符首次出现的索引时 int a[50] = "lord of the ring
for (j=6; j>0; j++)
;
及
从msdn的页面: “null语句”是缺少表达式的表达式语句。当语言的语法需要语句但不需要表达式求值时,它非常有用。它由分号组成 Null语句通常用作迭代语句中的占位符,或者用作在复合语句或函数末尾放置标签的语句 了解更多:
并解释它的一个典型用法 当您要查找字符串中某个字符首次出现的索引时
int a[50] = "lord of the rings";
int i;
for(i = 0; a[i] != 't'; i++)
;//null statement
//as no operation is required
空语句不做任何事情,因此solo“强>' 所以…这个代码块在C/C中不起任何作用++
for(inti=0;i<10;i++){//执行以下10次
;//无,又称“空语句”
}//结束
空语句是一种不做任何事情,但由于语法原因而存在的语句
while ((*s++ = *t++))
; /* null statement */
在这种情况下,null语句提供while循环的主体
或(免责声明:错误代码)
在这种情况下,内部else和null语句防止外部else绑定到内部if。从C11开始,:
null语句(仅由分号组成)不执行任何操作
行动
该标准还提供了it的几个常见用途:
程序片段中的示例2
char *s;
/* ... */
while (*s++ != '\0')
;
null语句用于向迭代提供空循环体
声明
while (loop1) {
/* ... */
while (loop2) {
/* ... */
if (want_out)
goto end_loop1;
/* ... */
}
/* ... */
end_loop1: ;
}
6例3空语句也可用于携带标签
在复合语句的结尾}之前
while (loop1) {
/* ... */
while (loop2) {
/* ... */
if (want_out)
goto end_loop1;
/* ... */
}
/* ... */
end_loop1: ;
}
有时null语句起作用。在“旧时代”,当您需要整数值时,数学硬件可能不会返回整数值,例如返回0.999。。。作为sin(pi/2),(即sin(90度))
inti,j,k;
i=某物;
对于(j=1;(2*j)无论是C还是java,null都具有特殊意义。
每当需要将值重新初始化为variavle时,null就起到了作用
如果有一个字符串i,我们希望它通过一个循环添加一个char值,那么首先我们必须用null初始化i。一个例子可能是while(1==1)
循环永远不起任何作用。例如,在一个你不想终止的线程中使用它,它可能继续处理它接收的消息,或被hanldle中断,或被其他进程调用它的回调函数。关闭--不清楚?Booo。好吧,这个问题表明缺乏研究,但这不能证明cl是正确的用不正确的理由来解释它。if(a)的'if'语句中,可能重复的I get warning suggest括号围绕空体;但我没有得到if(a){}用法的警告。区别是什么?OP的问题是关于null语句,而不是null关键字,这是您的答案似乎要解决的问题。
char *s;
/* ... */
while (*s++ != '\0')
;
while (loop1) {
/* ... */
while (loop2) {
/* ... */
if (want_out)
goto end_loop1;
/* ... */
}
/* ... */
end_loop1: ;
}
int i, j, k;
i = something;
for(j = 1; (2 * j) <= i; j *= 2);