Cè¯è¨æä¾äºå 个æ ååºå½æ°ï¼å¯ä»¥æ¯è¾ä¸¤ä¸ªå符串æ¯å¦ç¸åã以ä¸æ¯ç¨strcmp()å½æ°æ¯è¾å符串çä¸ä¸ªä¾åï¼
#include <stdio. h>
#include <string. h>
void main (void);
void main(void)
{
char* str_1 = "abc" ; char * str_2 = "abc" ; char* str_3 = "ABC" ;
if (strcmp(str_1, str_2) == 0)
printf("str_1 is equal to str_2. \n");
else
printf("str_1 is not equal to str_2. \n");
if (strcmp(str_1, str_3) == 0)
printf("str_1 is equal to str_3ï¼\n");
else
printf("str_1 is not equalto str_3ï¼\n")ï¼
}
ä¸ä¾çæå°è¾åºå¦ä¸æ示ï¼
str_1 is equal to str_2.
str_1 is not equal to str_3ï¼
strcmp()å½æ°æ两个åæ°ï¼å³è¦æ¯è¾ç两个å符串ãstrcmp()å½æ°å¯¹ä¸¤ä¸ªå符串è¿è¡å¤§å°åææç(case-sensitiVe)ååå
¸å¼ç(lexicographic)æ¯è¾ï¼å¹¶è¿åä¸åå¼ä¹ä¸ï¼
----------------------------------------------------
è¿ å å¼ æ ä¹
----------------------------------------------------
<0 第ä¸ä¸ªå符串å°äºç¬¬äºä¸ªå符串
0 两个å符串ç¸ç ·
>0 第ä¸ä¸ªå符串大äºç¬¬äºä¸ªå符串
----------------------------------------------------
å¨ä¸ä¾ä¸ï¼å½æ¯è¾str_1(å³âabcâ)åstr_2(å³âabcâ)æ¶ï¼strcmp()å½æ°çè¿åå¼ä¸º0ãç¶èï¼å½æ¯è¾str_1(å³"abc")åstr_3(å³"ABC")æ¶ï¼strcmp()å½æ°è¿åä¸ä¸ªå¤§äº0çå¼ï¼å 为æASCII顺åºå符串âABCâå°äºâabcâã
strcmp()å½æ°æ许å¤åä½ï¼å®ä»¬çåºæ¬åè½æ¯ç¸åçï¼é½æ¯æ¯è¾ä¸¤ä¸ªå符串ï¼ä½å
¶å®å°æ¹ç¨æå·®å«ãä¸è¡¨ååºäºCè¯è¨æä¾çä¸strcmp()å½æ°ç±»ä¼¼çä¸äºå½æ°ï¼
-----------------------------------------------------------------
å½ æ° å ä½ ç¨
-----------------------------------------------------------------
strcmp() 对两个å符串è¿è¡å¤§å°åææçæ¯è¾
strcmpi() 对两个å符串è¿è¡å¤§å°åä¸ææçæ¯è¾
stricmp() åstrcmpi()
strncmp() 对两个å符串çä¸é¨åè¿è¡å¤§å°åææçæ¯è¾
strnicmp() 对两个å符串çä¸é¨åè¿è¡å¤§å°åä¸ææçæ¯è¾
-----------------------------------------------------------------
å¨åé¢çä¾åä¸ï¼å¦æç¨strcmpi()å½æ°ä»£æ¿strcmp()å½æ°ï¼åç¨åºå°è®¤ä¸ºå符串âABCâçäºâabcâã
温馨提示:答案为网友推荐,仅供参考