Messages in this thread | | | Subject | Re: [PATCH] linux/string.h: Introduce streq macro. | From | Steven Rostedt <> | Date | Wed, 27 Apr 2011 13:07:59 -0400 |
| |
On Wed, 2011-04-27 at 17:46 +0100, Al Viro wrote: > On Tue, Apr 26, 2011 at 03:49:49PM -0300, Thiago Farina wrote: > > This macro is arguably more readable than its variants: > > - !strcmp(a, b) > > - strcmp(a, b) == 0 > > Strongly NACKed. As far as I'm concerned, it's in the same shitbucket as > bcopy(3), bzero(3) et.al. Use idiomatic C; extensions of that kind are > *bad*, since new developers have to learn them.
What developer has to really learn streq()? I mean it is pretty obvious to what it does, as suppose to what bzero and bcopy do. A quick google on "streq" brings up lots of matches of people who already do this.
Actually, some have "optimized" it with:
#define streq(a, b) (*(a) == *(b) && strcmp(a, b) == 0)
As it fails out if the first character does not match (likely the case if strings do not match) before it calls the strcmp function.
-- Steve
| |