Code:
#include<stdio.h>
#include<stdlib.h>
void function(int **x);
main()
{
int nrows=2,ncolumns=2,i,j;
//memory allocation for x
int **x=malloc(nrows*sizeof(int*));
if(x==NULL)
{
printf("out of memory\n");
return 0;
}
for(i=0;i<nrows;i++)
{
x[i]=malloc(ncolumns*sizeof(int));
if(x[i]=NULL)
{
printf("out of memory\n");
return 0;
}
}
printf("code passed me");//checking
//define x
for(i=0;i<2;i++)
for(j=0;j<2;j++)
x[i][j]=i+j+2;
//call function
function(x);
}
//function_definition
function(int **x)
{
int nrows=2,ncolumns=2,i,j,y[2][2];
for(i=0;i<2;i++)
for(j=0;j<2;j++)
y[i][j]=x[i][j]+1;
//display y
for(i=0;i<2;i++)
for(j=0;j<2;j++)
printf("%d",y[i][j]);
}
segmentation fault comes.. help please