web*_*oon 1 c segmentation-fault
#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
int main() {
int val[100000000] ;
printf("%d", CHAR_BIT);
}
Run Code Online (Sandbox Code Playgroud)
当我执行代码时,它会发生"段错误"错误.我想这个错误意味着堆区域没有足够的内存.
Oli*_*rth 11
不,这不是堆问题,而是堆栈.您已声明了一个局部变量,并且局部变量存在于堆栈中.
试试吧int *val = malloc(sizeof(int)*100000000);.您可以通过检查是否成功来测试是否成功(val != NULL).
(当然,free(val)当你完成记忆时,你需要记得打电话.)
| 归档时间: |
|
| 查看次数: |
389 次 |
| 最近记录: |