int aloca(int ***x,int n,int m){
int i,j;
*x = malloc(sizeof(x)*n);
if(*x){
for(i=0;i<m;i++){
*x[i] = malloc(sizeof(int)*m);
if(!*x[i]){
break;
}
}
if(i<m){
for(j=0;j<=i;j++){
free(*x[j]);
}
free(*x);
*x=NULL;
}
}
return *x?1:0;
}
int main(){
int **b,x,y,i,j;
x=2;
y=2;
if(aloca(&b,x,y)){
for(i=0;i<x;i++){
for(j=0;j<y;j++){
printf("m[%d][%d]:",i,j);
scanf("%d",&b[i][j]);
}
}
}
getche();
} Tudo bom? Estou fazendo essa funcao aloca , para alocar uma matriz, o codigo compila mas na parte onde eu irei digitar os valores , quando o codigo chega no ponto onde o numero de linhas é igual ao numero de colunas , o programa fecha de modo forcado. ex: matrix 2x2 , ao chegar no elemento b[1][1] , ele sai gostaria de saber se alguém tem alguma ideia de que possa ser o problema obrigado,