网友 251768938 说:
用法:./malloc 2000 &
2000为占用内存数值,单位MB,数值随便改,不为0就好
成品:见附件
源码:
- #include <stdlib.h>
- #include <stdio.h>
- #include <unistd.h>
- #define UNIT (1024*1024)
- int main(int argc, char *argv[])
- {
- long long i = 0;
- int size = 0;
- if (argc != 2)
- {
- p**ntf(&*uot;请输入需要分配的内存值\n&*uot;);
- ret**n 1;
- }
- #unsi**ed long int strtoul(const char *nptr, char **endptr, int base);
- #unsi**ed long long int strtoull(const char *nptr, char **endptr,int base);
- size = strtoull(argv[1], NULL, 10);#字符串转换成数字,十进制
- if (size == 0)
- {
- p**ntf(&*uot;请输入大于0的内存值&*uot;);
- ret**n 1;
- }
- char *buff = (char *) malloc(size * UNIT);
- if (buff)
- p**ntf(&*uot;已分配%dMB\n&*uot;, size);
- buff[0] = 1;
- for (i = 1; i < (size * UNIT); i++)
- {
- if (i%1024 == 0)
- buff[i] = buff[i-1]/8;
- else
- buff[i] = i/2;
- }
- p**se();
- }
未经允许不得转载:爱主机 » 甲骨文ARM小鸡一键防回收