int fd = open("/dev/mem", O_RDWR);
present = (unsigned char *)mmap(0,
getpagesize(),
PROT_READ|PROT_WRITE,
MAP_SHARED,
fd,
0x22400000);
if ((*present & 1) == 0)
{
printf("Converter not present\n");
exit(1);
}
1)在前面的代码中,“&”运算符是什么意思?
最佳答案
它是bitwise and operator。这意味着该运算的结果是对两个操作数的二进制and
进行逐位(即按位方式)执行。
在这种情况下,正在检查present指向的内存的第一位是否为0。
关于c - 在C和mmap()中代表什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14928972/