真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何使用strncmp函數(shù)

如何使用strncmp函數(shù)?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

成都創(chuàng)新互聯(lián)主營(yíng)龍華網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,app軟件開(kāi)發(fā),龍華h5小程序設(shè)計(jì)搭建,龍華網(wǎng)站營(yíng)銷(xiāo)推廣歡迎龍華等地區(qū)企業(yè)咨詢(xún)

strncmp函數(shù)為字符串比較函數(shù),其函數(shù)語(yǔ)法為“int strncmp ( const char * str1, const char * str2, size_t n );”,功能是把str1和str2進(jìn)行比較。

strncmp函數(shù)為字符串比較函數(shù),字符串大小的比較是以ASCII 碼表上的順序來(lái)決定,此順序亦為字符的值。其函數(shù)聲明為int strncmp ( const char * str1, const char * str2, size_t n );功能是把 str1 和 str2 進(jìn)行比較,最多比較前 n 個(gè)字節(jié),若str1與str2的前n個(gè)字符相同,則返回0;若s1大于s2,則返回大于0的值;若s1 小于s2,則返回小于0的值。

strncmp語(yǔ)法

函數(shù)聲明

int strncmp(const char *str1, const char *str2, size_t n)

參數(shù)

str1-- 要進(jìn)行比較的第一個(gè)字符串。

str2-- 要進(jìn)行比較的第二個(gè)字符串。

n-- 要比較的最大字符數(shù)。

返回值

該函數(shù)返回值如下:

如果返回值 < 0,則表示 str1 小于 str2。

如果返回值 > 0,則表示 str2 小于 str1。

如果返回值 = 0,則表示 str1 等于 str2。

功能比較

函數(shù) strncmp 與函數(shù)strcmp極為類(lèi)似,但功能不完全相同,區(qū)別如下:

(1)strncmp函數(shù)

用來(lái)比較s1和s2字符串的前n個(gè)字符。如果兩個(gè)字符串相等的話,strncmp將返回0。如果s1是s2的一個(gè)子串的話,s1小于s2。

(2)strcmp函數(shù)

同樣用于比較兩個(gè)字符串 ,設(shè)這兩個(gè)字符串為str1,str2

若str1==str2,則返回零;

若str1 > str2,則返回正數(shù);

若str1< str2,則返回負(fù)數(shù)。

即:兩個(gè)字符串自左向右逐個(gè)字符相比(按ASCII值大小相比較),直到出現(xiàn)不同的字符或遇"\0"為止。 [3]

(3)總結(jié)

兩者不同之處是,strncmp函數(shù)是指定比較size個(gè)字符,strcmp函數(shù)比較整個(gè)字符,直到出現(xiàn)不同的字符或遇"\0"為止。

應(yīng)用示例

示例1

#include 
#include 
int main(){
    char *buf1="aaabbb",*buf2="bbbccc",*buf3="ccc";
    int ptr;
    ptr=strncmp(buf2,buf1,3);
    if(ptr>0)
        printf("buffer2 is greater than buffer1\n");
    else if(ptr<0)
        printf("buffer2 is less than buffer1\n");
    ptr=strncmp(buf2,buf3,3);
    if(ptr>0)
        printf("buffer2 is greater than buffer3\n");
    else if(ptr<0)
        printf("buffer2 is less than buffer3\n");
    return 0;
}

ouput:

buffer2 is greater than buffer1
buffer2 is less than buffer3

示例 2

/*strncmpexample*/
#include
#include
int main()
{
char str[][5]={"R2D2","C3PO","R2A6"};
int n;
puts("Looking for R2 as tromechdroids...");
for(n=0;n<3;n++)
{
if(strncmp(str[n],"R2xx",2)==0)
{
printf("found%s\n",str[n]);
}
}
return0;
}

ouput:

Looking for R2 as tromechdroids...
foundR2D2
foundR2A6

拓展延伸-PHP中strncmp

函數(shù)名: strncmp ()

功 能:比較字符串的前N個(gè)字符

用 法:

int strncmp(stringstr1,charstr2,intlen);

說(shuō)明:比較字符串str1和str2的大小,如果str1小于str2,返回值就<0,反之如果str1大于str2,返回值就>0,如果str1等于str2,返回值就=0,len指的是str1與str2的比較的字符數(shù)。此函數(shù)功能即比較字符串str1和str2的前l(fā)en個(gè)字符。 [5]

提示:該函數(shù)區(qū)分大小寫(xiě)。

示例:

結(jié)果為:-1

關(guān)于如何使用strncmp函數(shù)問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。


文章標(biāo)題:如何使用strncmp函數(shù)
當(dāng)前地址:http://weahome.cn/article/pgsidi.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部