How to allocate array of pointers to integers in C

1 Answer

0 votes
#include <stdio.h>
#include <stdlib.h> 
  
int main(void)
{
    int **p = malloc(3 * sizeof(int *));
    
    if (p == NULL) 
    {
        perror("malloc() error");
        return -1;
    }
    
    int a = 13, b = 98, c = 100;
    
    p[0] = &a;
    p[1] = &b;
    p[2] = &c;
    
    printf("%d, %d, %d", *p[0], *p[1], *p[2]);
    
    free(p);
      
    return 0;
}
   
 
/*
run:
 
13, 98, 100
 
*/

 



answered Jul 27, 2017 by avibootz

Related questions

1 answer 155 views
1 answer 181 views
1 answer 191 views
1 answer 163 views
...