一 strcmp:
(1)语法:
#include<string.h>
int strcmp(const char *s1,const char *s2);
(2)功能:
strcmp函数按照字典顺序比较字符串s1和s2的内容(两个字符串均以null字符结尾)。如果s1小于s2,这个函数返回一个小于0的int值(gcc返回-1);如果s1等于s2,它返回int值0;如果s1大于s2,它返回一个大于0的int值(gcc返回+1)。
(3)比较说明:
如果两个字符串相同,它们就是相等的。如果出现下面这两种情况,字符串s1在字典顺序小于字符串s2:
*这两个字符串在部分位置是相同的,在第一个不同的位置上,s1的字符值小于s2的字符值。
*字符串s1的长度小于s2,s1的内容和s2从头部开始并且长度与s1相同的那个子字符串的内容相同。
二 strncmp(memcmp函数提供了类似功能):
(1)语法:
int strncmp(const char *s1,const char *s2);
(2)功能:
strncmp与strcmp区别:strncmp最多只比较字符串s1和s2(均以null字符结尾)的前n个字符。
在比较字符串时,如果字符串所包含的字符小于n个,则整个字符串都将进行比较,否则,就比较前n个字符。
注意:如果n是0或负值,则两个字符串被当做空字符串,比较的结果是相等,因此这个函数返回0。