什么是C中的null语句?

什么是C中的null语句?,c,null,C,Null,我想确切地知道,在C编程语言中什么是空语句?并解释它的一个典型用法 我找到了下面的代码段 for (j=6; j>0; j++) ; 及 从msdn的页面: “null语句”是缺少表达式的表达式语句。当语言的语法需要语句但不需要表达式求值时,它非常有用。它由分号组成 Null语句通常用作迭代语句中的占位符,或者用作在复合语句或函数末尾放置标签的语句 了解更多: 并解释它的一个典型用法 当您要查找字符串中某个字符首次出现的索引时 int a[50] = "lord of the ring

我想确切地知道,在C编程语言中什么是空语句?并解释它的一个典型用法

我找到了下面的代码段

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);