Home | History | Annotate | Download | only in src
      1 // Test multiple levels of indirection
      2 
      3 void testsingle() {
      4     int a = 0;
      5     int* pa = &a;
      6     printf("a = %d, *pa = %d\n", a, *pa);
      7     *pa = 2;
      8     printf("a = %d, *pa = %d\n", a, *pa);
      9 }
     10 
     11 void testdouble() {
     12     int a = 0;
     13     int* pa = &a;
     14     int** ppa = &pa;
     15     printf("a = %d, *pa = %d **ppa = %d\n", a, *pa, **ppa);
     16     **ppa = 2;
     17     printf("a = %d, *pa = %d **ppa = %d\n", a, *pa, **ppa);
     18 }
     19 
     20 void testtripple() {
     21     int a = 0;
     22     int* pa = &a;
     23     int** ppa = &pa;
     24     int*** pppa = &ppa;
     25     printf("a = %d, *pa = %d **ppa = %d\n ***pppa = %d", a, *pa, **ppa, ***pppa);
     26     ***pppa = 2;
     27     printf("a = %d, *pa = %d **ppa = %d\n ***pppa = %d", a, *pa, **ppa, ***pppa);
     28 }
     29 
     30 int main() {
     31     testsingle();
     32     testdouble();
     33     testdouble();
     34     return 0;
     35 }
     36