strcmp的原型与用法

来源:互联网 发布:零基础linux教程 编辑:程序博客网 时间:2024/05/16 07:23
  • 原型:extern int strcmp(const char s1,const char s2);
  • 用法:#include < string.h >
  • 功能:比较字符串s1和s2。
  • 一般形式:strcmp(字符串1,字符串2)
  • 说明:
  • 当s1 < s2时,返回值<0
  • 当s1 = s2时,返回值=0
  • 当s1 > s2时,返回值>0

[plain] view plain copy
  1. /*********************************  
  2. File name : mystrcmp.c      
  3. *********************************/  
  4. #include <stdio.h>  
  5. int my_strcmp(const char *str, const char *ptr)  
  6. {  
  7.     int ret = 0;  
  8.     //循环判断两个字符串的字符,根据其差值判断大小  
  9.     while (!(ret = *str - *ptr) && *ptr)  
  10.     {  
  11.         ++str;  
  12.         ++ptr;  
  13.     }  
  14.     if (ret < 0)  
  15.     {  
  16.         ret = -1;  
  17.     }  
  18.     else if (ret > 0)  
  19.     {  
  20.         ret = 1;  
  21.     }  
  22.     else  
  23.     {  
  24.         ret = 0;  
  25.     }  
  26.     return ret;  
  27. }  
  28. int main()  
  29. {  
  30.     char str[] = "1234567";  
  31.     char ptr[] = "1234567";  //ptr = str;  
  32.     char src[] = "123456";   //src < str;  
  33.     char prc[] = "12345678"; //prc > str;  
  34.   
  35.     int test1 = my_strcmp(str, ptr);  
  36.     int test2 = my_strcmp(str, src);  
  37.     int test3 = my_strcmp(str, prc);  
  38.     printf("test1 = %d\n", test1);  
  39.     printf("test2 = %d\n", test2);  
  40.     printf("test3 = %d\n", test3);  
  41.     return 0;  
  42. }  

程序运行结果

这里写图片描述


0 0