不知道问这个问题是否真的很愚蠢,因为我觉得它违反了 C 语法。但我不确定。我在几分钟前发布的一个问题中偶然发现了这个问题。OP 使用类似(int i = 0; i < n; i++)
的东西,即甚至没有;
after i++
.
但是,尽管 OP 的台词显然是错误的,但我很想问一些我不知道的事情——以下在 C 中是什么意思:
(int i = 0; i < n; i++;) // Three `;` terminated statements enclosed in ()
因为以下仅表示 C 中的语句块:
{int i = 0; i < n; i++;}
(int i = 0,n=3; i = n; i++;)
我的意思是,以下虚拟程序中的含义是什么:
#include<stdio.h>
int main(void)
{
(int i = 0,n=3; i = n; i++;)
}
编辑即使来自原始问题的那一行也充满了错误。所以让我独立地问这个问题:如果我们将多个 ;
终止的语句包含在一对中,它会做什么()
?如果我们把它封闭在{}
里面就变成了一个块,但是呢()
?