各位朋友们,我在指针这块有个疑问:我在用mmap做内存映射时,mmap调用成功的返回值是映射区的首地址。然后我定义了一个void* addr 去接收这个地址。但是为什么我想要打印出这个映射区的内容时,用的是addr,而不是*addr,addr不是映射区的首地址吗为什么能够打印出映射区的内容?
问题是你输出格式是%s啊,%s要求是字符串,所以后面必须是个字符数组的首地址。因此用addr,不是addr。 addr只是第一个字符而已。