转载自https://blog.csdn.net/troyaninpc/article/details/79476377
for(;;)死循环里的两个;;代表两个空语句,编译器一般会优化掉它们,直接进入循环体。
while(true)死循环里的true被看成表达式,每循环一次都要判断表达式是否真。
即,相对来说for式死循环更加高效一点。
当然以上条件成立还要看编译器的优化,一些编译器优化的两者并无区别,但是,并非所有的编译器都做了这样的优化。
在单片机内可能存在内存的问题所以有时候用for可能较为方便。