实现strcmp
?
strcmp : ?比較兩個字符串
?
規(guī)則:
當str1<str2時,返回為負數 ;?
當str1==str2時,返回值= 0 ;?
當str1>str2時,返回正數。
即:兩個字符串自左向右逐個字符相比(按ASCII值大小相比較),直到出現不同的字符或遇'\0'為止。
?
?
#include<stdio.h> #include<assert.h>int my_strcmp(const char*str1, const char*str2) {assert(str1 != NULL);assert(str2 != NULL);while(*str1 == *str2){if(*str1 == "\0"){return 0;}str1++;str2++;}return *str1 - *str2; } int main() {char *p = "abcdef";char *q = "abcawafg";int ret = my_strcmp(p, q);if (ret > 0)printf("p大\n");else if (ret < 0)printf("q大\n");elseprintf("一樣大\n");return 0; }?
?
?
總結