函式
<cstring>

strncmp

int strncmp ( const char * str1, const char * str2, size_t num );
比較兩個字串的字元
此函式會將 C 字串 str1 的前 num 個字元與 C 字串 str2 的相應字元進行比較。
該函式從比較兩個字串的第一個字元開始。如果它們相等,它將繼續比較後續的字元對,直到字元不匹配、遇到終止空字元,或者直到 num 個字元在兩個字串中都匹配為止,以先發生的為準。

引數

str1
要比較的 C 字串。
str2
要比較的 C 字串。
num
要比較的最大字元數。
size_t 是一個無符號整數型別。

返回值

返回一個整數值,指示兩個字串之間的關係
返回值表示
<0第一個不匹配的字元在 str1 中比在 str2 中值小
0兩個字串的內容相等
>0第一個不匹配的字元在 str1 中比在 str2 中值大

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* strncmp example */
#include <stdio.h>
#include <string.h>

int main ()
{
  char str[][5] = { "R2D2" , "C3PO" , "R2A6" };
  int n;
  puts ("Looking for R2 astromech droids...");
  for (n=0 ; n<3 ; n++)
    if (strncmp (str[n],"R2xx",2) == 0)
    {
      printf ("found %s\n",str[n]);
    }
  return 0;
}

輸出

Looking for R2 astromech droids...
found R2D2
found R2A6


另見