在C語(yǔ)言中比較兩個(gè)字符串是否相等的方法
C語(yǔ)言strcmp()函數(shù):比較字符串(區(qū)分大小寫)
頭文件:#include <string.h>
strcmp() 用來比較字符串(區(qū)分大小寫),其原型為:
int strcmp(const char *s1, const char *s2);
【參數(shù)】s1, s2 為需要比較的兩個(gè)字符串。
字符串大小的比較是以ASCII 碼表上的順序來決定,此順序亦為字符的值。strcmp()首先將s1 第一個(gè)字符值減去s2 第一個(gè)字符值,若差值為0 則再繼續(xù)比較下個(gè)字符,若差值不為0 則將差值返回。例如字符串"Ac"和"ba"比較則會(huì)返回字符"A"(65)和'b'(98)的差值(-33)。
【返回值】若參數(shù)s1 和s2 字符串相同則返回0。s1 若大于s2 則返回大于0 的值。s1 若小于s2 則返回小于0 的值。
注意:strcmp() 以二進(jìn)制的方式進(jìn)行比較,不會(huì)考慮多字節(jié)或?qū)捵止?jié)字符;如果考慮到本地化的需求,請(qǐng)使用 strcoll() 函數(shù)。
【實(shí)例】對(duì) 4 組字符串進(jìn)行比較。
#include <string.h>
main(){
char *a = "aBcDeF";
char *b = "AbCdEf";
char *c = "aacdef";
char *d = "aBcDeF";
printf("strcmp(a, b) : %d\n", strcmp(a, b));
printf("strcmp(a, c) : %d\n", strcmp(a, c));
printf("strcmp(a, d) : %d\n", strcmp(a, d));
}
輸出結(jié)果:
strcmp(a, b) : 32 strcmp(a, c) :-31 strcmp(a, d) : 0
C語(yǔ)言strcasecmp()函數(shù):判斷字符串是否相等(忽略大小寫)
頭文件:#include <string.h>
定義函數(shù):
int strcasecmp (const char *s1, const char *s2);
函數(shù)說明:strcasecmp()用來比較參數(shù)s1 和s2 字符串,比較時(shí)會(huì)自動(dòng)忽略大小寫的差異。
返回值:若參數(shù)s1 和s2 字符串相同則返回0。s1 長(zhǎng)度大于s2 長(zhǎng)度則返回大于0 的值,s1 長(zhǎng)度若小于s2 長(zhǎng)度則返回小于0 的值。
范例
#include <string.h>
main(){
char *a = "aBcDeF";
char *b = "AbCdEf";
if(!strcasecmp(a, b))
printf("%s=%s\n", a, b);
}
執(zhí)行結(jié)果:
aBcDeF=AbCdEf
相關(guān)文章
C++基礎(chǔ)入門教程(九):函數(shù)指針之回調(diào)
這篇文章主要介紹了C++基礎(chǔ)入門教程(九):函數(shù)指針之回調(diào),本文講解了函數(shù)的地址、聲明函數(shù)指針、歷史原因、typedef挽救復(fù)雜的函數(shù)指針等內(nèi)容,需要的朋友可以參考下2014-11-11
C/C++內(nèi)存泄漏原因分析與應(yīng)對(duì)方法
內(nèi)存泄漏會(huì)導(dǎo)致當(dāng)前應(yīng)用程序消耗更多的內(nèi)存,使得其他應(yīng)用程序可用的內(nèi)存更少了,那么為什么會(huì)內(nèi)存泄漏,我們應(yīng)該怎樣應(yīng)對(duì)內(nèi)存泄漏,所以接下來就給大家詳細(xì)介紹一下C++內(nèi)存泄漏原因分析與應(yīng)對(duì)方法,需要的朋友可以參考下2023-07-07
C語(yǔ)言實(shí)現(xiàn)動(dòng)態(tài)版通訊錄的代碼分享
這篇文章主要為大家詳細(xì)介紹了如何利用C語(yǔ)言實(shí)現(xiàn)一個(gè)簡(jiǎn)單的動(dòng)態(tài)版通訊錄,主要運(yùn)用了結(jié)構(gòu)體,一維數(shù)組,函數(shù),分支與循環(huán)語(yǔ)句等等知識(shí),需要的可以參考一下2023-01-01
C++實(shí)現(xiàn)簡(jiǎn)單校園導(dǎo)游系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)簡(jiǎn)單校園導(dǎo)游系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03
c++靜態(tài)局部變量和靜態(tài)函數(shù)示例
這篇文章主要介紹了c++靜態(tài)局部變量和靜態(tài)函數(shù)示例,需要的朋友可以參考下2014-04-04

