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++ 数学 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++ OOP C++ 类/对象 C++ 类方法 C++ 构造函数 C++ 访问修饰符 C++ 封装 C++ 继承 C++ 多态 C++ 文件 C++ 异常 C++ 日期

C++ 数据结构

C++ 数据结构 & STL C++ 向量 C++ 列表 C++ 栈 C++ 队列 C++ 双端队列 C++ 集合 C++ 映射 C++ 迭代器 C++ 算法

C++ 如何

C++ 添加两个数字 C++ 随机数

C++ 参考

C++ 参考 C++ 关键字 C++ <iostream> C++ <fstream> C++ <cmath> C++ <string> C++ <cstring> C++ <ctime> C++ <vector> C++ <algorithm>

C++ 示例

C++ 示例 C++ 现实生活中的例子 C++ 编译器 C++ 练习 C++ 测验 C++ 证书


C++ cstring memcmp() 函数

❮ CString 函数


示例

比较两个内存块,查看哪个更大

char myStr1[] = "ABCD";
char myStr2[] = "ABCE";
int cmp = memcmp(myStr1, myStr2, 4);
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 memcmp() 函数比较两个内存块,并返回一个整数,指示哪个更大。

对于此比较,从两个内存块中相同位置的字节逐个进行比较,从位置 0 开始,直到其中一个不匹配或内存块的末尾已到达。有三种可能的情况

  • 如果在没有不匹配的情况下到达内存块的末尾,则函数返回零。
  • 在第一个不匹配的情况下,如果第一个内存块中字节的值更大,则函数返回一个正数。
  • 在第一个不匹配的情况下,如果第二个内存块中字节的值更大,则函数返回一个负数。

The memcmp() 函数在 <cstring> 头文件中定义。

注意: The memcmp() 函数适用于任何类型的内存。在使用 C 风格字符串 (char 数组) 时,最好使用 strcmp() 函数。


语法

memcmp(void * pointer1, void * pointer2, size_t size);

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

参数值

参数 描述
pointer1 必需。指向要比较的内存块之一的指针。
pointer2 必需。指向要比较的内存块之一的指针。
size 必需。要比较的字节数。

技术细节

返回值 一个 int 值,如果第一个内存块更大,则为正数;如果第二个内存块更大,则为负数;如果两个内存块相等,则为 0。

❮ CString 函数

×

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.