首頁 > 後端開發 > C++ > 主體

在C/C++中,strcmp()函數用於比較兩個字串

WBOY
發布: 2023-09-10 11:41:06
轉載
749 人瀏覽過

在C/C++中,strcmp()函數用於比較兩個字串

函數strcmp()是一個內建函式庫函數,它在「string.h」頭檔中宣告。該函數用於比較字串參數。它按字典順序比較字串,這意味著它逐個字元地比較兩個字串。它開始比較字串的第一個字符,直到兩個字串的字元相等或找到NULL 字元。

如果兩個字串的第一個字元相等,則檢查第二個字符,依此類推。這個過程會一直持續下去,直到找到NULL字元或兩個字元不相等。

這裡是C語言中strcmp()的語法,

int strcmp(const char *leftStr, const char *rightStr );
登入後複製

這個函數傳回以下三個不同的值

1.Zero(0) - 如果兩個字串相同,則傳回零。兩個字串中的所有字元都相同。

這裡是C 語言中兩個字串相等時strcmp() 的範例,

範例

 Live Demo

#include<stdio.h>
#include<string.h>
int main() {
   char str1[] = "Tom!";
   char str2[] = "Tom!";
   int result = strcmp(str1, str2);
   if (result==0)
   printf("Strings are equal");
   else
   printf("Strings are unequal");
   printf("\nValue returned by strcmp() is: %d" , result);
   return 0;
}
登入後複製

Output

Strings are equal
Value returned by strcmp() is: 0
登入後複製

2.大於零(>0) -當左字串的匹配字元的ASCII值大於右字串的字元時,它會傳回一個大於零

這裡是C語言中strcmp()傳回大於零值的一個例子,

範例

 線上示範

#include<stdio.h>
#include<string.h>
int main() {
   char str1[] = "hello World!";
   char str2[] = "Hello World!";
   int result = strcmp(str1, str2);
   if (result==0)
   printf("Strings are equal");
   else
   printf("Strings are unequal");
   printf("\nValue returned by strcmp() is: %d" , result);
   return 0;
}
登入後複製

Output

Strings are unequal
Value returned by strcmp() is: 32
登入後複製

3.小於零(<0) −當左字串的匹配字元的ASCII值小於右字串的字元時,它會傳回一個小於零的值。

以下是C語言中strcmp()的一個例子

範例

 線上示範

#include<stdio.h>
#include<string.h>
int main() {
   char leftStr[] = "Hello World!";
   char rightStr[] = "hello World!";
   int result = strcmp(leftStr, rightStr);
   if (result==0)
   printf("Strings are equal");
   else
   printf("Strings are unequal");
   printf("\nValue returned by strcmp() is: %d" , result);
   return 0;
}
登入後複製

輸出

Strings are unequal
Value returned by strcmp() is: -32
登入後複製
#

以上是在C/C++中,strcmp()函數用於比較兩個字串的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板