• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Test multiple levels of indirection
2 
testsingle()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 
testdouble()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 
testtripple()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 
main()30 int main() {
31     testsingle();
32     testdouble();
33     testdouble();
34     return 0;
35 }
36