仅使用停止条件时,使用"for"或"while"循环?

xra*_*llx 0 c embedded for-loop while-loop

可能重复:
为什么使用for循环而不是while循环?

我目前正在使用嵌入式c.我正在使用的软件是keil uvision.

所以我对你将使用哪个循环有疑问?两个循环完全相同.只要signal = 0,'i'将增加1.

首先,

for(;signal==0;)
{
    i++;
}
Run Code Online (Sandbox Code Playgroud)

下一个计划:

while(signal==0)
{
    i++;
}
Run Code Online (Sandbox Code Playgroud)

那么你会使用哪个循环?为什么?它们之间有什么区别?执行时间是否有任何差异?或者它纯粹基于您的偏好?

TSL*_*TSL 6

一般来说,for当迭代次数已知时(即对于数组中的每个元素),循环是首选,而while当您不知道运行循环的次数时,循环对于更一般的条件更好.但是,for循环可以做任何while循环,反之亦然; 这一切都取决于哪一个使您的代码更具可读性

在这种情况下,while循环将是更可取的,因为您正在等待signal == 0变为假,并且您不知道何时会发生这种情况.