小编F. *_*ark的帖子

检查分配的内存大小

我正在编写一个接受数组大小作为参数的程序,然后应该为该大小动态分配内存.

我希望我的程序返回已分配的内存大小.目前我正在使用argv读取输入值,然后mmap用于动态分配.我还使用for循环来显示在数组的每个索引中保存的数字.

我知道分配可以完成malloc,但我无法使用它.我想我需要从最后一个元素开始并检查所有单元格,直到我得到一个SEGFAULT信号.

谢谢你的帮助.

编辑:没有库等的短代码...

input = (atoi(argv[1]));
int* arr = mmap(0, input, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, fd, 0);

for (i = 0; i < input; i++) {
    arr[i] = i + 1; 
}
Run Code Online (Sandbox Code Playgroud)

c dynamic-allocation

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

标签 统计

c ×1

dynamic-allocation ×1