-3
私はこのコードを持っている:2次元ポインタ構造体をmalloc、calloc、reallocする方法は?
#include <stdio.h>
#include <stdlib.h>
int main() {
int i,j,width,height,operatie;
struct pixel {
unsigned char r, g, b;
} ;
struct pixel **poza;
scanf("%d",&operatie);
scanf("%d",&width);
scanf("%d",&height);
poza = malloc (height * width * sizeof(pixel));
for (i=0 ; i<height ; i++) {
for (j=0 ; j<width ; j++) {
scanf("%c",&(poza[i][j].r));
scanf("%c",&(poza[i][j].g));
scanf("%c",&(poza[i][j].b));
}
}
for (i=0 ; i<height ; i++) {
for (j=0 ; j<width ; j++) {
printf("%d ",(poza[i][j].r));
printf("%d ",(poza[i][j].g));
printf("%d ",(poza[i][j].b));
}
printf("\n");
}
return 0;
}
は、私はこの上malloc
、calloc
とrealloc
を使用する方法を知りたいです。 可能であれば、どのように動作するか説明してください。そこ
poza = malloc(高さ*幅* sizeof(ピクセル)); '---->' poza = malloc(高さ*幅* sizeof(構造体ピクセル)); ' – LPs