gpt4 book ai didi

c++ - 无法使用指针写入 MMF

转载 作者:行者123 更新时间:2023-11-28 07:08:58 25 4
gpt4 key购买 nike

我想将 char* buf[] 写入共享内存。

我得到了几个指向多个 map 的指针 - char* m_pP[MAX], map 已打开

m_oMMF[channel] = OpenFileMapping(FILE_MAP_ALL_ACCESS, FALSE, wstring);
m_pP[channel] = (char*) MapViewOfFile(m_oMMF[channel], FILE_MAP_ALL_ACCESS, 0, 0, size);

map 的大小足够大,我得到了 int offset 我想使用这个 m_P[] 指针在共享内存中写入但我在语法上苦苦挣扎这个。

我在 C++ 方面经验不足。谁能帮我这个?

谢谢

最佳答案

不确定我是否理解清楚。

但我假设,您有指向映射内存的字符指针,并且您正尝试在某个偏移量后写入数据。

char * ptr_to_memory = m_pP[channel];

//buf is array of character pointer, so you need to know the "index" as well as "size" of the data you need to write.

char * data_to_write = buf[index];

memcpy( ptr_to_memory + offset, data_to_write, size );

记得做一些完整性检查,看看 ( ptr + offset ) 是否在映射区域内。

关于c++ - 无法使用指针写入 MMF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21306504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com