fork download
  1. #include <stdio.h>
  2.  
  3. void swap_pointer(int *pp[]);
  4.  
  5. int main(void)
  6. {
  7. int a = 1;
  8. int b = 2;
  9.  
  10. int *p[2] = {&a, &b};
  11.  
  12. int size = sizeof(p) / sizeof(p[0]);
  13.  
  14. for (int i = 0; i < size; i++) {
  15. printf("before: p[%d] : %p\n", i, p[i]);
  16. }
  17.  
  18. swap_pointer(p);
  19.  
  20. for (int i = 0; i < size; i++) {
  21. printf("after : p[%d] : %p\n", i, p[i]);
  22. }
  23.  
  24. return 0;
  25. }
  26.  
  27. void swap_pointer(int *pp[])
  28. {
  29. int *temp;
  30.  
  31. temp = pp[0];
  32. pp[0] = pp[1];
  33. pp[1] = temp;
  34. }
Success #stdin #stdout 0s 5320KB
stdin
Standard input is empty
stdout
before: p[0] : 0x7fff70affeb0
before: p[1] : 0x7fff70affeb4
after : p[0] : 0x7fff70affeb4
after : p[1] : 0x7fff70affeb0