Double pointer in C

  1. #include <stdio.h>  
  2. #include <conio.h>  
  3. #include <malloc.h>  
  4.   
  5. int main()  
  6. {  
  7.     int **arr;  
  8.     int rows,cols;  
  9.     int i,j;  
  10.   
  11.     printf("Enter rows : ");  
  12.     scanf("%d",&rows);  
  13.   
  14.     arr=(int **)malloc(rows*sizeof(int *));  
  15.       
  16.     printf("Enter cols : ");  
  17.     scanf("%d",&cols);  
  18.   
  19.     for(i=0;i<rows;i++)  
  20.     {  
  21.         arr[i]=(int *)malloc(cols*sizeof(int));  
  22.     }  
  23.   
  24.     printf("Enter values : \n\n");  
  25.     for(i=0;i<rows;i++)  
  26.     for(j=0;j<cols;j++)  
  27.         scanf("%d",&arr[i][j]);  
  28.   
  29.     printf("You entered : \n\n");  
  30.     for(i=0;i<rows;i++)  
  31.     for(j=0;j<cols;j++)  
  32.         printf("%d ",arr[i][j]);  
  33.   
  34.     return 0;  
  35. }