C语言中strcmp的实现原型

C语言中strcmp的实现原型

实现代码:

int  __cdecl  strcmp  (   
         const  char  *  src,   
         const  char  *  dst   
         )   
 {   
         int  ret  =  0  ;   
   
         while(  !  (ret  =  *(unsigned  char  *)src  -  *(unsigned  char  *)dst)  &&  *dst)   
                 ++src,  ++dst;   
   
         if  (  ret  <  0  )   
                 ret  =  -1  ;   
         else  if  (  ret  >  0  )   
                 ret  =  1  ;   
   
         return(  ret  );   
 } 

 函数原型:int strcmp(const char *dest, const char *source) ;

返回值:返回整数值,如果dest > source,则返回值大于0,如果dest = source,则返回值等于0,如果dest < source ,则返回值小于0。字符大小是按照字符的字典序列进行排列的。

参数说明:都是以''/0''为结束符的字符串

实现;

int strcmp(const char *dest, const char *source) 
{ 
  assert((NULL != dest) && (NULL != source)); 
  while (*dest && *source && (*dest == *source)) 
      { 
          dest ++; 
          source ++; 
      } 
  return *dest - *source; 
/*如果dest > source,则返回值大于0,如果dest = source,则返回值等于0,如果dest < source ,则返回值小于0。*/ 
} 

以上就是C语言中strcmp的实现原型的实例,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!