if( (a = *b++) != 0 ) { ...
123
a = *b; // Assign to a, what b points to b++; // Increment b to point to the next thing if ( a != 0 ) { // do something if a is not equal to 0
if
(a = *b++) != 0
a = *b++
X != 0
=
a = Y
a
*b++
*b++ // equals *( b++ )