In the dashed case, k is going to be zero or one (a<b is true or false). This works, though:
int a=0, b=4;
while(a < - - - - --b) {
printf("b: %d\n", b);
}