首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在没有memcpy的情况下连接两个内存缓冲区

在没有memcpy的情况下,可以使用循环来连接两个内存缓冲区。以下是一个简单的C++代码示例:

代码语言:cpp
复制
#include<iostream>
#include <cstring>

void memcpy_manual(void* dest, const void* src, size_t count) {
    char* dest_ptr = static_cast<char*>(dest);
    const char* src_ptr = static_cast<const char*>(src);
    for (size_t i = 0; i< count; ++i) {
        dest_ptr[i] = src_ptr[i];
    }
}

int main() {
    char buffer1[] = "Hello, ";
    char buffer2[] = "world!";
    char result[13];

    memcpy_manual(result, buffer1, sizeof(buffer1));
    memcpy_manual(result + sizeof(buffer1), buffer2, sizeof(buffer2));

    std::cout<< result<< std::endl;

    return 0;
}

这段代码中,我们定义了一个名为memcpy_manual的函数,它接受三个参数:目标缓冲区的指针、源缓冲区的指针和要复制的字节数。然后,我们使用循环将源缓冲区中的数据复制到目标缓冲区中。在main函数中,我们定义了两个字符串缓冲区buffer1buffer2,以及一个结果缓冲区result。我们使用memcpy_manual函数将两个缓冲区连接在一起,并将结果输出到控制台。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券