gpt4 book ai didi

c++ - 这两个条件句等价吗?

转载 作者:太空宇宙 更新时间:2023-11-04 11:46:45 25 4
gpt4 key购买 nike

我正在学习编程语言原理。我的老师给了我一个问题,如下所示,这让我很困惑:

1:

if (Condition){
Case A;
} else {
Case B;
}

2:

Case B;
if (Condition) {
Undo Case B;
Case A;
}

假设在c++中,这两个程序是等价的吗?


这里新增:哪个性能更好,在什么条件下?

最佳答案

这两个程序的输出是相同的。但是在

if (Condition){
Case A;
} else {
Case B;
}

只执行了一条语句。如果“条件”为真,这会导致更快的执行时间。

Case B;
if (Condition) {
Undo Case B;
Case A;
}

Case B 始终执行,无论 Condition 的真值如何。当 Condition 为真时,总共执行 3 条语句。

  1. Case B
  2. Undo Case B
  3. Case A

Condition 为假时,两个程序的执行时间大致相同。

关于c++ - 这两个条件句等价吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19580932/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com