一个非常简单的mmap
并写入for循环。所有我试图做它使每个字节255的值。为什么我不能写入这个缓冲区?
#include <stdio.h>
#include <sys/mman.h>
#include <stdint.h>
#define BUFFER_SIZE 1024
int main()
{
void *Buffer = mmap(0,
BUFFER_SIZE,
PROT_READ | PROT_WRITE,
MAP_PRIVATE | MAP_ANONYMOUS,
-1,
0);
uint8_t *Byte = (uint8_t *)Buffer;
for (int i = 0; i < BUFFER_SIZE - 1; ++i)
{
*Byte++ = 0xFF;
printf("%u", *Byte);
}
munmap(Buffer, BUFFER_SIZE);
return 0;
}
由于某种原因,我的输出是全0。我错过了什么?
现在好吧,我很尴尬。我会尽快接受。 – Deepak