无限循环是否被认为是“运行时错误”?(C)

我有这个问题:


#include <stdio.h>
int main()
{

    float s;

    for (s = 100000001.0f; s <= 100000010.0f; s += 1.0f) {
    };

    printf("SLABCn");
 
return 0;

} 

它是无限循环,因为浮动的东西。但是如果这被认为是“运行时错误”或“什么都不打印”

回答

我假设您使用的是早于 C11 的版本,因为大学通常教授旧版本。如果没有,请查看MM的答案。

无论如何,我们可以看看所有的答案:

  1. 不编译:这是错误的。这个程序完美编译。但是,它可能会发出警告,这与错误不同
  2. 导致运行时错误:否。这段代码一直在运行。它将永远留在for循环内,甚至更远(或者只是关闭程序而不是戏剧性的)。第 3 点相同。
  3. 打印 SLABC:否。它留在for循环内。阅读第 2 点以获取更多信息。
  4. 什么都不打印:这是正确的答案。没有错误,程序将执行所有内容。

你的程序本质上就像我的清单。如果你正确地遵循它,你会卡在第 2 点和第 3 点之间,永远无法阅读第 4 点。但你比那更聪明。


以上是无限循环是否被认为是“运行时错误”?(C)的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>