int strncmp ( const char * str1, const char * str2, size_t n );
str1, str2 为需要比较的两个字符串,n为要比较的字符的数目。
第一个字符串大于第二个字符串,则返回大于0的数字;
第一个字符串等于第二个字符串,则返回0;
第一个字符串小于第二个字符串,则返回小于0的数字;
代码:#include运行结果:#include int my_strncmp(const char* string1, const char* string2, size_t count) { assert(string1 != NULL && string2 != NULL); int res = 0; while (count-- != 0) { res = *string1 - *string2; if (res != 0) break; string1++; string2++; } return res; } void main() { char str1[20] = "hello"; char str2[20] = "hela"; int a = my_strncmp(str1, str2, 3); int b = my_strncmp(str1, str2, 4); printf("%dn", a); printf("%dn", b); }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)