程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> 在C說話中比擬兩個字符串能否相等的辦法

在C說話中比擬兩個字符串能否相等的辦法

編輯:關於C++

在C說話中比擬兩個字符串能否相等的辦法。本站提示廣大學習愛好者:(在C說話中比擬兩個字符串能否相等的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是在C說話中比擬兩個字符串能否相等的辦法正文


C說話strcmp()函數:比擬字符串(辨別年夜小寫)

頭文件:#include <string.h>

strcmp() 用來比擬字符串(辨別年夜小寫),其原型為:

  int strcmp(const char *s1, const char *s2);

【參數】s1, s2 為須要比擬的兩個字符串。

字符串年夜小的比擬是以ASCII 碼表上的次序來決議,此次序亦為字符的值。strcmp()起首將s1 第一個字符值減去s2 第一個字符值,若差值為0 則再持續比擬下個字符,若差值不為0 則將差值前往。例如字符串"Ac"和"ba"比擬則會前往字符"A"(65)和'b'(98)的差值(-33)。

【前往值】若參數s1 和s2 字符串雷同則前往0。s1 若年夜於s2 則前往年夜於0 的值。s1 若小於s2 則前往小於0 的值。

留意:strcmp() 以二進制的方法停止比擬,不會斟酌多字節或寬字節字符;假如斟酌到當地化的需求,請應用 strcoll() 函數。

【實例】對 4 組字符串停止比擬。

#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));
}

輸入成果:

strcmp(a, b) : 32
strcmp(a, c) :-31
strcmp(a, d) : 0

C說話strcasecmp()函數:斷定字符串能否相等(疏忽年夜小寫)
頭文件:#include <string.h>

界說函數:

int strcasecmp (const char *s1, const char *s2);

函數解釋:strcasecmp()用來比擬參數s1 和s2 字符串,比擬時會主動疏忽年夜小寫的差別。

前往值:若參數s1 和s2 字符串雷同則前往0。s1 長度年夜於s2 長度則前往年夜於0 的值,s1 長度若小於s2 長度則前往小於0 的值。

典范

#include <string.h>
main(){
  char *a = "aBcDeF";
  char *b = "AbCdEf";
  if(!strcasecmp(a, b))
  printf("%s=%s\n", a, b);
}

履行成果:

aBcDeF=AbCdEf

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved