memcmp 和 memcpy使用

Posted 豆子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了memcmp 和 memcpy使用相关的知识,希望对你有一定的参考价值。

#include <iostream>
#include <cstring>
#include <cstdlib>
#include <cstdio> 
using namespace std;

int main()
{
    typedef int Status[3];
    int a[3][3];

    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            a[i][j] = i*3 + j + 1;
        }
    }
    
    Status &b = a[0];       //1 2 3
    Status &c = a[1];       //4 5 6
    Status &d = a[2];       //7 8 9
    //test memcmp  比较 b, c元素 1.b > c: 1 , 2.b == c: 0, 3.b < c: -1
    cout << memcmp(b, c, sizeof(c)) << endl;
    //test memcpy, 将 c数组元素都拷贝到d中 
    memcpy(&d, &c, sizeof(c));
    for (int i = 0; i < 3; i++) {
        cout << d[i] << " ";        
    }
for (int i = 0; i < 3; i++) { cout << a[2][i] << " "; //同时也改变了 a[2]这行数据 } //这两个函数,完成整块内存的比较和复制, 比循环比较和赋值要快 }

 

以上是关于memcmp 和 memcpy使用的主要内容,如果未能解决你的问题,请参考以下文章

使用CAPL 内置函数 memcpy 和memcmp 处理数组的若干问题

使用CAPL 内置函数 memcpy 和memcmp 处理数组的若干问题

memset memcmp memcpy memmove 自己实现

C语言内存操作函数

memcpy() memset() 内存拷贝函数 /初始化

类字符串函数---内存函数的使用以及模拟实现(下)