Menu
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C 语言教程

C 语言首页 C 语言介绍 C 语言入门 C 语言语法 C 语言输出 C 语言注释 C 语言变量 C 语言数据类型 C 语言常量 C 语言运算符 C 语言布尔值 C 语言 If...Else C 语言 Switch C 语言 While 循环 C 语言 For 循环 C 语言 Break/Continue C 语言数组 C 语言字符串 C 语言用户输入 C 语言内存地址 C 语言指针

C 语言函数

C 语言函数 C 语言函数参数 C 语言作用域 C 语言函数声明 C 语言递归 C 语言数学函数

C 语言文件

C 语言创建文件 C 语言写入文件 C 语言读取文件

C 语言结构体

C 语言结构体

C 语言枚举

C 语言枚举

C 语言内存

C 语言内存管理

C 语言参考

C 语言参考 C 语言关键字 C 语言 <stdio.h> C 语言 <stdlib.h> C 语言 <string.h> C 语言 <math.h> C 语言 <ctype.h>

C 语言示例

C 语言示例 C 语言现实例子 C 语言练习题 C 语言测验 C 语言编译器 C 语言证书

C 语言字符串 strncmp() 函数

❮ 字符串函数


示例

比较两个字符串的前 3 个字符

char myStr1[] = "ABCD";
char myStr2[] = "ABCE";
int cmp = strncmp(myStr1, myStr2, 3);
if (cmp > 0) {
  cout << myStr1 << " is greater than " << myStr2 << "\n";
} else if (cmp < 0) {
  cout << myStr2 << " is greater than " << myStr1 << "\n";
} else {
  cout << myStr1 << " is equal to " << myStr2 << "\n";
}
自己尝试一下 »

定义和用法

The strncmp() 函数比较两个字符串的前 _n_ 个字符,并返回一个整数,指示哪个字符串更大。

对于此比较,从两个字符串的同一位置开始,从左到右依次比较每个字符,直到其中一个字符不匹配,_n_ 次比较完成,或者字符串的末尾被检测到。 存在四种可能的场景

  • 如果进行了 _n_ 次比较,并且没有出现任何不匹配,则函数返回零。
  • 如果在没有出现任何不匹配的情况下,两个字符串的末尾都被检测到,则函数返回零。
  • 在第一次不匹配时,如果第一个字符串中字符的 ASCII 值更大,则函数返回一个正数。
  • 在第一次不匹配时,如果第二个字符串中字符的 ASCII 值更大,则函数返回一个负数。

The strcmp() 函数在 <string.h> 头文件中定义。

注意: 要比较整个字符串,请使用 strcmp() 代替。


语法

strcmp(const char * str1, const char * str2, size_t n);

The size_t 数据类型是一个正整数。

参数值

参数 描述
str1 必需。要比较的字符串之一。
str2 必需。要比较的字符串之一。
n 必需。一个限制要比较的字符数量的正整数。

技术细节

返回值 一个 int 值,如果第一个字符串更大,则为正数,如果第二个字符串更大,则为负数,如果两个字符串相等,则为 0。

❮ 字符串函数


相关页面

C 语言字符串教程

C 语言字符串函数教程


×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.