源碼實現 --> strcmp

比較字符串大小

 

函數

int strcmp(const char *string1, const char *string2);

比較字符串string1和string2大小. 返回值< 0, 表示string1小於string2; 返回值爲0, 表示string1等於string2; 返回值> 0, 表示string1大於string2.ios

 

源碼

int strcmp(const char *s, const char *t) {    
    assert(s != NULL && t != NULL);     
    while (*s && *t && *s == *t)     
    {        
         ++ s;         
         ++ t;     
    }     
    return (*s - *t); 
}

同時,還寫了一個只判斷兩個字符串是否相等的程序。函數

int strCmp(char *strOne,char *strTwo)
{
    assert((strOne!=NULL) && (strTwo!=NULL));
    while(*strOne++ && *strTwo++)
    {
        if(*strOne!=*strTwo)
        {
            return 0;
            break;
        }
           
    }
    return 1;
}

 

測試

#include<iostream.h>
#include<assert.h>
void main()
{
    char str1[10]="aaabbbccc";
    char str2[10]="aa";
    int result = strCmp(str1,str2);
    cout<<result<<endl;
}

輸出結果:測試

判斷大小,輸出結果爲 97

其是字母a的ascii碼;

比較是否相等,輸出結果是0
相關文章
相關標籤/搜索