小编use*_*388的帖子

如何获得 mmap 分配的字节数?

我正在构建malloc使用 mmap的自定义实现。

如果用户想要分配 500 字节的内存,我调用mmap(0, 500, PROT_READ | PROT_WRITE, MAP_SHARED | MAP_ANONYMOUS, -1, 0). mmap返回一个指向大小为 4096 的块的指针(如果这是页面大小)。

在我的链表中,我希望将一个块设置为 500 字节标记为已占用,并将一个块设置为 4096-500=3596 字节标记为空闲。尚不清楚,但是mmap实际分配了多少内存。我怎样才能得到这些信息?

c

5
推荐指数
1
解决办法
2209
查看次数

返回语句中的C++条件

有没有办法做到这一点

bool retA = true, retB=false retC=true,retD=false;

return ( (if RetA -> A) + (if RetB -> B) + (if RetC -> C) + (if RetD -> A) )
Run Code Online (Sandbox Code Playgroud)

基本上如果{A,B,C,D] = {1,2,3,4},返回值是1 + 0 + 3 + 0 = 4.您可以使用16个不同的if/else语句执行此操作,但代码不漂亮

c++

2
推荐指数
1
解决办法
49
查看次数

"(a << 24 | b << 16 | c << 8 | d)"是什么意思?

 public int getRGB(Object inData) {
     return (getAlpha(inData) << 24)
         | (getRed(inData) << 16)
         | (getGreen(inData) << 8)
         | (getBlue(inData) << 0);

 }
Run Code Online (Sandbox Code Playgroud)

那么,这个返回语句实际上做了什么?四个整体被转移,但返回的是什么?

java

0
推荐指数
1
解决办法
148
查看次数

标签 统计

c ×1

c++ ×1

java ×1