91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在c語言中strcmp是什么

發布時間:2020-07-28 16:44:34 來源:億速云 閱讀:566 作者:Leah 欄目:編程語言

這篇文章將為大家詳細講解有關在c語言中strcmp是什么,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

strcmp在c語言中的意思是string compare的縮寫,用于比較兩個字符串并根據比較結果返回整數,基本形式為strcmp(str1,str2),若【str1=str2】,則返回零,若【str1<str2】,則返回負數。

strcmp在c語言中的意思是:

strcmp函數是string compare(字符串比較)的縮寫,用于比較兩個字符串并根據比較結果返回整數。基本形式為strcmp(str1,str2),若str1=str2,則返回零;若str1<str2,則返回負數;若str1>str2,則返回正數。

當s1<s2時,返回為負數;

當s1=s2時,返回值= 0;

當s1>s2時,返回正數。

即:兩個字符串自左向右逐個字符相比(按ASCII值大小相比較),直到出現不同的字符或遇'\0'為止。如:

1."A"<"B"

2."A"<"AB"

3."Apple"<"Banana"

4."A"<"a"

5."compare"<"computer"

特別注意:strcmp(const char *s1,const char * s2)這里面只能比較字符串,即可用于比較兩個字符串常量,或比較數組和字符串常量,不能比較數字等其他形式的參數。

ANSI標準規定,返回值為正數,負數,0 。而確切數值是依賴不同的C實現的。

  • 當兩個字符串不相等時,C標準沒有規定返回值會是1 或 -1,只規定了正數和負數。

  • 有些會把兩個字符的ASCII碼之差作為比較結果由函數值返回。但無論如何不能以此條依據作為程序中的流程邏輯。

代碼:

#include <string.h>
#include <memcopy.h>
#undef strcmp
int strcmp(p1,p2)
{
    const char *p1;    
    const char *p2;    
    register const unsignedchar *s1=(const unsignedchar*)p1;    
    register const unsignedchar *s2=(const unsignedchar*)p2;    
    unsigned reg_charc1,c2;
     do
    {
        c1=(unsigned char)*s1++;        
        c2=(unsigned char)*s2++;        
        if(c1=='\0')            
        returnc1-c2;    
     }
     while(c1==c2);    
        return c1-c2;        
}     
libc_hidden_builtin_def(strcmp)
//以上代碼是K&R C規范的,ASCI C的在下面
 
/*strcmp function*/
#include <string.h> 
int(strap)(const char *sl,const char *s2)
{
    /*compare unsigned char sl[],s2[]*/
    for(;*sl==*s2;++sl,++s2)
        if(*sl=='\0')
            return(0);
    return((*(unsignedchar*)sl<*(unsignedchar*)s2)?-1:+1);
}


關于在c語言中strcmp是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

桐乡市| 台安县| 托克托县| 南和县| 金山区| 太康县| 通渭县| 炉霍县| 石门县| 武邑县| 旺苍县| 于都县| 赤水市| 连城县| 华宁县| 伊春市| 五河县| 册亨县| 新营市| 磴口县| 鹤岗市| 池州市| 顺昌县| 吴江市| 化州市| 增城市| 绥宁县| 开阳县| 嘉兴市| 孙吴县| 东台市| 隆子县| 民县| 五指山市| 民乐县| 东方市| 江西省| 德钦县| 上虞市| 渭南市| 玉田县|