阅读量:0
目录
strcmp函数的功能
strcmp函数的功能是字符串比较,两个字符串的对应位置的字符进行比较,直到字符不同或达到终止的 '\0' 字符为止
举例说明:
字符串1:"abcdef"
字符串2:"abq"
对应位置的字符进行比较,字符 a 和 b 相等,字符 c 和 q 不相等,字符 q 的ASCII码值大于 字符 c 的 ASCII 码值,所以字符串 "abq" 大于字符串 "abcdef"
学习strcmp函数
strcmp函数的参数:
str1 和 str2 两个字符指针,用来接收需要比较的字符串的首地址,因为只是需要比较,不会改变字符串的内容,所以可以加上 const 关键字修饰
strcmp函数的返回值:第一个字符串 小于 第二个字符串时,返回小于0的数字
第一个字符串 等于 第二个字符串时,返回等于0的数字
第一个字符串 大于 第二个字符串时,返回大于0的数字
使用strcmp函数
验证第一个字符串 小于 第二个字符串时:(默认返回-1)
验证第一个字符串 等于 第二个字符串时:(默认返回0)
验证第一个字符串 大于 第二个字符串时:(默认返回1)
模拟实现strcmp函数
int my_strcmp(const char* str1, const char* str2) { // 断言 assert(str1 != NULL); assert(str2 != NULL); // 判断是否相等 while (*str1 == *str2) { if (*str1 == '\0' || *str2 == '\0') return 0; str1++; str2++; } // 判断是否大于或者小于 if (*str1 > *str2) return 1; else return -1; }
代码验证:
验证第一个字符串 小于 第二个字符串时:(默认返回-1)
验证第一个字符串 等于 第二个字符串时:(默认返回0)
验证第一个字符串 大于 第二个字符串时:(默认返回1)