arrays - Ciki boyutlu dizi Malloc
问题描述
我不知道我错在哪里,我得到分段错误错误。你能帮我吗?
我的代码;
#include <stdio.h>
#include <stdlib.h>
void do_array(int x, int y, int **arr){
arr=(int **)malloc(sizeof(int)*x);
for (int i=0;i<y;i++){
*(arr+i)=(int *)malloc(sizeof(int)*y);
}
}
int main(){
int **p;
do_array(5,2,p);
for (int i=0;i<5;i++){
for (int j=0;j<2;j++){
*(*(p+i)+j)=i;
}
}
for (int i=0;i<5;i++){
for (int j=0;j<2;j++){
printf("%d\n",*(*(p+i)+j));
}
}
return 0;
}
!!!我想做的是创建一个动态二维数组
解决方案
int main(){ int **p /* = NULL */ ; // p is garbage or NULL do_array(5,2,p); // p is still garbage or NULL for (int i=0;i<5;i++){ for (int j=0;j<2;j++){ *(*(p+i)+j)=i; // p is still garbage or NULL
推荐阅读
- c# - SMTP 服务器响应为 5.7.1 客户端未通过身份验证
- django - 为什么较低的内置过滤器在 Django 模板 2.2 中不起作用?
- asynchronous - gRPC 是否支持 ASYNCHRONOUS SERVER 以及通过服务器端类似回调机制的异步客户端?
- node.js - 从 id 数组中获取 firestore 文档列表
- javascript - MainSlide 中的 FlexSlider 活动图像不在 SubSlide 中
- javascript - sc如何更改 Datepicker 格式 Materializecss
- python-xarray - Parallel appending to a zarr store via xarray.to_zarr and Dask
- django - Django message box while view is running
- python - What is the difference between the Pycharm Virtual Environment and the Existing Intrepreter
- typescript - Deploy an Express API written with TypeScript to Azure App Service