今天我在搞乱malloc和整数指针.程序设置为它为一个整数指针分配一个内存位置,然后用一堆整数填充内存位置,然后打印所有整数.问题是什么时候它完成运行它崩溃.我怀疑malloc导致了这个问题.
这是代码
#include<stdio.h>
#include<stdlib.h>
int main(){
int *name,x;
char y;
name=malloc(sizeof(int));
for(x=0;x<500;x++){
name[x]=x;
}
for(x=0;x<500;x++){
printf("%d ",name[x]);
}
scanf("%c",&y);
free(name);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
请帮忙.谢谢!
小智 8
name = malloc(sizeof(int));
Run Code Online (Sandbox Code Playgroud)
是问题.这样,您只能在数组中存储一个int.尝试
name = malloc(sizeof(int) * 500);
Run Code Online (Sandbox Code Playgroud)
代替.
| 归档时间: |
|
| 查看次数: |
171 次 |
| 最近记录: |