gpt4 book ai didi

c - sys/mman.h 的 Windows 等价物

转载 作者:太空宇宙 更新时间:2023-11-04 01:59:03 50 4
gpt4 key购买 nike

我在尝试在 Win64 上编译我的 C 代码时遇到问题。更具体地说,编译器找不到 sys/mman.h header ,据我所知,它只能在 Unix 环境中找到。

我已经知道这是内存分配问题。

我可以使用 Windows 的等效项来移植代码(第一次尝试)吗?

导致问题的代码:

/* Allocate memory required by processes */
buf = (int*) malloc (sizeof(int));
if (!buf)
{
perror("Error");
free (buf);
return -3;
}

/* Lock down pages mapped to processes */
puts("Locking down processes.");
if(mlockall (MCL_CURRENT | MCL_FUTURE) < 0)
{
perror("mlockall");
free (buf);
return -4;
}

最佳答案

你应该看看 mman-win32 library .但正如@Mgetz 指出的那样,更简单的方法是查看 VirtualAllocEx函数并尝试调整您的代码。

关于c - sys/mman.h 的 Windows 等价物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29660492/

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