do—while语句看似简单,但其应用十分广泛和灵活。在while(条件表达式)中的条件表达式是由do中的内嵌语句执行的,这里以下图为例加以说明。我们可以看到,点亮多个灯的C程序有多种编写方式,均可达到相同的功能。
该程序功能是给Pl6F84A的端口PORTB赋不同的值,使端口PORTB各位外接的LED按所赋的值不断点亮、熄灭,并重复循环。循环过程由do—while语句中的内嵌语句自增量进行,循环次数由while中的条件表达式决定。将上述功能的do—while语句应用程序命名为pic03.c,其清单如下:
说明:该程序中,对B口的赋值(语句),使用十六进制数,也可用注释中的数进行赋值,它们是等效的。对于某一口外接点灯,使用二进制数赋值更直观形象。
在学习以上程序时,应注意do—while语句中的自增量与while中条件表达式之间关系,特别是条件表达式值控制增量的循环次数。所以。在实验该程序时,可将条件表达式的值进行多个变化,以便直接观察相关量的功能。