Categories:
.NET (357)
C (330)
C++ (183)
CSS (84)
DBA (2)
General (7)
HTML (4)
Java (574)
JavaScript (106)
JSP (66)
Oracle (114)
Perl (46)
Perl (1)
PHP (1)
PL/SQL (1)
RSS (51)
Software QA (13)
SQL Server (1)
Windows (1)
XHTML (173)
Other Resources:
Here is a neat trick for checking whether two strings are equal
Q: Here's a neat trick for checking whether two strings are equal:
if(!strcmp(s1, s2))
Is this good style?
✍: Guest
It is not particularly good style, although it is a popular idiom. The test succeeds if the two strings are equal, but the use of ! (``not'') suggests that it tests for inequality.
Another option is to define a macro:
#define Streq(s1, s2) (strcmp((s1), (s2)) == 0)
which you can then use like this:
if(Streq(s1, s2))
Another option (which borders on preprocessor abuse;is to define
#define StrRel(s1, op, s2) (strcmp(s1, s2) op 0)
after which you can say things like
if(StrRel(s1, ==, s2)) ...
if(StrRel(s1, !=, s2)) ...
if(StrRel(s1, >=, s2)) ...
2015-05-15, 1573👍, 0💬
Popular Posts:
How can I execute a PHP script using command line? Just run the PHP CLI (Command Line Interface) pro...
How do we host a WCF service in IIS? Note: - The best to know how to host a WCF in IIS is by doing a...
What will be printed as the result of the operation below: main() { char s1[]="Cisco"; char s2[]="sy...
How To Download and install PSP Evaluation? - PSP Tutorials - Fading Images to Background Colors wit...
Can you explain project life cycle ? Figure :- 12.2 Life cycle of a project There are five stages of...