Eric Sunshine <[email protected]> writes:
> On Mon, Jun 29, 2015 at 4:42 PM, Stefan Beller <[email protected]> wrote:
>> On Sun, Jun 28, 2015 at 7:06 AM, Paul Tan <[email protected]> wrote:
>>> +/**
>>> + * Returns true if `str` consists of only whitespace, false otherwise.
>>> + */
>>> +static int str_isspace(const char *str)
>>> +{
>>> + while (*str)
>>> + if (!isspace(*(str)++))
>>> + return 0;
>> ...
>> while (*str && !isspace(*(str)++))
>> return 0;
> ...
> Ugh. Please don't break the logic with this strange and bogus transformation.
>
> If you really want it to read more idiomatically, try:
>
> for (; *s; s++)
> if (!isspace(*s))
> return 0;
;-).
Regardless of the loop structure, I find
*(str)++
especially ugly and confusing. I'd understand if it were
*(str++)
but the parentheses pair is unnecessary.
Not using any increment inside isspace(), like you showed, is the
most readable.
Thanks.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html