On Wed, 16 May 2007, Klaas-Jan Stol wrote:

> hi,
> I've been studying the code in the fotw: debug.c and below are my comments,
> if they're of any interest. Feel free to neglect, I'm kinda picky.
> 
> 1.
>    while (*command && (isalnum((int) *command) || *command == ',' ||
>        *command == ']'))
> 
> I'm not 100% sure, but:
> I've always been taught that this should not be written like this. The issue
> here is that you ASSUME that the compiler does expression short-cutting
> during evaluating the && expression. Suppose a c compiler does not implement
> this,

Short-circuiting like this is guaranteed in C, dating all the way back to 
K&R 1.  If the compiler doesn't implement it, it's badly broken.

-- 
    Andy Dougherty              [EMAIL PROTECTED]

Reply via email to