gpt4 book ai didi

c - 将值插入大型数组 C 时程序崩溃

转载 作者:太空宇宙 更新时间:2023-11-04 06:32:39 25 4
gpt4 key购买 nike

我正在尝试做一个家庭作业来测量二级缓存的大小。我正在尝试用随机整数创建并填充一个大数组(对于缓存来说太大了),然后我将以不同的步长遍历它并对性能进行基准测试。

我遇到的问题是,当我为大型数组分配内存,然后开始用 1 到 100 之间的随机整数填充数组时,程序崩溃(堆栈溢出?)。

不幸的是,我对 C 编程还很陌生。

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main(int argc, char *argv[])
{
int buffSize = sizeof(int) * 2000000;

int * buff = (int*) malloc(buffSize);


srand(time(NULL));

for (int i = 0; i < buffSize; i++)
{
int r = rand() % 100 + 1;

buff[i] = r;
}

return 0;
}

最佳答案

for (int i = 0; i < buffSize; i++)

你走得太远了。当 bufsize2000000 * sizeof(int) 时,您只需要增加到 2000000。

关于c - 将值插入大型数组 C 时程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18968513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com