语言C++,纯C语言也可以,malloc即可
代码如下:
#include<stdio.h>
#include<Windows.h>
#include<stdlib.h>
using namespace std;
typedef double ll;
int main() {
for (int cycle = 0; cycle < 1000; cycle++) {
const int X_size = 60000;//每次增长幅度
const int y_size = 4200;// 时间t
const int num_max = 5 * 1e5;
double** p = new double* [y_size];
for (int i = 0; i < y_size; i++) {
int j = num_max;
while (j--);
p[i] = new double[X_size];
j = num_max;
while (j--);
printf("%d\n", i);
}
printf("\n\n释放\n\n");
for (int i = 0; i < y_size; i++) {
int j = num_max;
while (j--);
delete[]p[i];
j = num_max;
while (j--);
printf("%d\n", i);
}
delete[]p;
}
system("pause");
return 0;
}
看一看细节
为什么想到做这个,有什么意义吗
无意中发现下面的曲线:

便想到用程序下实现上图。
自然想到C中的malloc--free和C++中的new--delete内存动态堆上分配。
同时,Dev C++和Visio Studio 中分配过多会导致程序异常中断,所以最后实现的图的坡度较小。
仅供娱乐
版权声明:本文为weixin_54010759原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。