我正在阅读C编程语言(K&R),并注意到C允许在单个语句之前使用while循环来在没有任何大括号的情况下工作;为什么C的创建者决定支持这一点?我猜想这会给编译器带来一些额外的复杂性,对于单语句循环的需求是否如此普遍(可能是为了可读性?)不管为了让他们做什么交易都是值得的?
发布于 2020-05-20 02:14:06
它不会给编译器增加任何特殊的复杂性,而且不仅仅是while循环。所有控制结构(if,for,the等)管理“语句”,其中块只是包含0或多个声明或语句的语句(称为“复合语句”)的特例。将此规则应用于while没有任何具体的用例或理由,但除了简单性或一致性之外,没有任何一个是真正需要的。
https://stackoverflow.com/questions/61903853
复制相似问题