我被要求评论一些代码并描述它的作用。一切都很好,我很好地掌握了 switch 案例中正在做的事情,但现在我不确定是否曾经遇到过任何案例。我目前无需运行或测试此代码,因为我的主机和所有常规软件都已关闭。
除了默认情况下,是否会在此 while 循环的条件下使用开关的任何一种情况?我是否只是简单地增加到 32 并且 rByte 在它甚至进行切换之前返回?有什么用; 之后的条件呢?后面不应该是 {....} 而不是 ; ?
while(pCommand[--Ptr.Five] > 10 && ++i <32);
if(i==32)
{
return rByte;
}
switch(pCommand[Ptr.Five++])
{
case 2: ... (lots of code)
break;
case 4: ... (lots of cod)
break;
default: ...
break;
}
此外,--Ptr.Five 与 Ptr.Five++ 相比如何处理?我的理解是第一个将指针移回并使用该值,而第二个使用当前值并发布增量。
我错过了什么吗?甚至移动过去;在 while 的条件和 while 之后缺少 {} 之后,Ptr.Five 的值不会 > 10,因此永远不会是 2 或 4?
与 ; 在这段时间的情况下,我会不会被撞到32,如果会返回rByte?