strlen(a) - strlen(b)>0;

比较两个字符串的长度?
 
strlen(a)>strlen(b);
 
strlen(a) - strlen(b)>0;
 
 
哪种是对的呢?
我们发现
 
size_t strlen(
   const char *str
);

返回的是一个无符号类型。问题来了?

 

如果a字符串的长度小于b,

a-b = -1;

但是用无符号表示会带来问题

会是一个很大的树,结果如果用

strlen(a) - strlen(b)>0;来表示的话,正好是相反的。

 

 

细心一些,一些简单的问题。

posted @ 2012-11-02 00:33  pipicfan  阅读(886)  评论(0编辑  收藏  举报