C++ reverse memcpy
生活随笔
收集整理的這篇文章主要介紹了
C++ reverse memcpy
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C++ reverse memcpy
- 前言
- 基于QT的測試樣例
- 結果
前言
C++ 實現翻轉memcpy
基于QT的測試樣例
代碼如下:
#include <iostream> #include <QtCore/QCoreApplication> #include <QDebug>using namespace std;void *reversememcpy(void *out, const void *in, int char_num);int main(int argc, char *argv[]) {QCoreApplication a(argc, argv);int in[4] = {1,3,5,7};qDebug()<<in[0]<<""<<in[1]<<""<<in[2]<<""<<in[3];char *buf = new char[16];memcpy(buf, in, 16);int *out = new int[4];reversememcpy(out, buf, 16);qDebug()<<*out<<""<<*(out+1)<<""<<*(out+2)<<""<<*(out+3);int *out2 = new int[4];reversememcpy(out2, in, 16);qDebug()<<*out2<<""<<*(out2+1)<<""<<*(out2+2)<<""<<*(out2+3);return a.exec(); }void *reversememcpy(void *out, const void *in, int char_num) {int typeSize = sizeof(out); char *o = (char *)out;char *i = (char *)in;for (int n = 0; n < char_num/typeSize; n++){for (int m = 0; m < typeSize; m++){o[n*typeSize+m] = i[char_num-(n+1)*typeSize+m];}}return (void *)o; }結果
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的C++ reverse memcpy的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 面试必问之JVM原理
- 下一篇: linux内核编程--4netfiter