我目前正在使用嵌入式c.软件,我正在使用的是keil uvision。
所以我有一个问题,关于你会在哪个循环上使用?这两个循环所做的事情完全相同。只要信号= 0,“i”就会增加1。
首先,
for(;signal==0;)
{
i++;
}
下一个节目:
while(signal==0)
{
i++;
}
那么你会使用哪个循环,为什么呢?他们之间有什么区别?在执行时间上有什么不同吗?还是纯粹基于你的喜好?
发布于 2012-08-06 18:44:56
一般来说,当已知迭代次数(即数组中的每个元素)时,for
循环是首选的,当您不知道将运行该循环多少次时,while
循环更适合于更一般的条件。然而,for
循环可以执行while
循环所能做的任何事情,反之亦然;这都取决于哪个循环可以提高代码的可读性。
在这种情况下,最好使用while
循环,因为您正在等待signal == 0
变为false,并且您不知道何时会发生这种情况。
发布于 2012-08-06 18:43:01
任何for
循环都可以用while
循环编写,反之亦然。你所做的是偏好、惯例和可读性的混合。
通常,for
循环用于计数,而while
循环则在某种程度上等待满足某个条件(比如文件的结尾)。没有表现上的差别。
样板for
和while
循环:
for(int i = 0; i < someArraysLength; i++)
{
// Modify contents of array
}
while(lineLeftInFile)
{
// Read and parse the line
}
发布于 2012-08-06 18:38:18
最容易阅读和理解的。
请记住,某个人(不是您)可能会在某个时候尝试阅读您的代码。
我的观点:while
https://stackoverflow.com/questions/11838496
复制