fork download
  1. #include <stdio.h>
  2. unsigned char *PutData1[2];
  3. unsigned char *PutData2[2];
  4. unsigned char Data1[2] = { 0xAB, 0xCD };
  5. unsigned char Data2[2] = { 0xDE, 0xAE };
  6. unsigned char Data3[2] = { 0x44, 0x33 };
  7. unsigned char Data4[2] = { 0x11, 0x55 };
  8. void call_func1(unsigned char x, unsigned char *Test1, unsigned char *Test2)
  9. {
  10. PutData1[x] = Test1;
  11. PutData2[x] = Test2;
  12. if (x== 0){
  13. printf("Init PutData1: %02x %02x %02x %02x \n", PutData1[0][0], PutData1[0][1], PutData2[0][0], PutData2[0][1]);
  14. }
  15. if (x== 1){
  16. printf("PutData2: %02x %02x %02x %02x \n", PutData1[1][0], PutData1[1][1],PutData2[1][0], PutData2[1][1] );
  17. printf("Afer PutData1: %02x %02x %02x %02x \n", PutData1[0][0], PutData1[0][1], PutData2[0][0], PutData2[0][1]);
  18. }
  19. }
  20.  
  21. void Func1(void)
  22. {
  23.  
  24. call_func1(0, &Data1[0], &Data2[0]);
  25. }
  26.  
  27. void Func2(void)
  28. {
  29.  
  30. call_func1(1,&Data3[0], &Data4[0]);
  31.  
  32. }
  33.  
  34. int main(void) {
  35. Func1 ();
  36. Func2 ();
  37. return 0;
  38. }
  39.  
Success #stdin #stdout 0s 4528KB
stdin
Standard input is empty
stdout
Init PutData1: ab cd de ae  
PutData2: 44 33 11 55  
Afer PutData1: ab cd de ae