独闷闷网

标题: 群主分享一个判断两个字符串是否相等的函数,非常简单巧妙,神来之笔。 [打印本页]

作者: jianhong_wu    时间: 2017-7-9 10:25
标题: 群主分享一个判断两个字符串是否相等的函数,非常简单巧妙,神来之笔。
本帖最后由 jianhong_wu 于 2017-7-9 10:26 编辑

坚鸿-深圳:
分享一个判断两个字符串是否相等的函数,非常简单巧妙,神来之笔。这个函数就是对比两个字符串是否相等,频繁应用在密码对比,字符搜索是否匹配的等项目上。这个函数主要是判断两个方面,一个是字符串长度是否一致,另一个是字符单词是否完全一致。这个函数其实很简单,但是要写出味道来,还需灵感和神来之笔,我自从写出了这段代码后,获得了队友的一致好评。代码如下,u8代表unsigned char:




源代码如下:

  1. /*
  2. *********************************************************************************************************
  3. *        函 数 名: CmpTwoString
  4. *        功能说明: 比较两个字符串是否相等
  5. *        形    参:pCu8FirstString 第一个字符串的指针         
  6. *        形    参:pCu8SecondString 第二个字符串的指针     
  7. *        形    参:u8LengthMax  最大对比的元素个数   
  8. *        返 回 值: 0  不相等。
  9. *        返 回 值: 1  相等。
  10. *********************************************************************************************************
  11. */      
  12. u8 CmpTwoString(const u8 *pCu8FirstString,const u8 *pCu8SecondString,u8 u8LengthMax)
  13. {

  14.         while(1)
  15.         {
  16.                 if(0==u8LengthMax)
  17.                 {
  18.             return 0;
  19.                 }
  20.                 u8LengthMax--;
  21.                
  22.                 if(*pCu8FirstString!= *pCu8SecondString)
  23.                 {
  24.             return 0;
  25.                 }

  26.                 if(*pCu8FirstString=='\0')  //全部匹配。
  27.                 {
  28.              return 1;        
  29.                 }         
  30.                
  31.                 pCu8FirstString++;
  32.                 pCu8SecondString++;
  33.                
  34.         }
  35. }
复制代码










欢迎光临 独闷闷网 (http://dumenmen.com/) Powered by Discuz! X3.2