fork download
  1. #include <stdio.h>
  2. int x;
  3. void mondai1(int b){
  4. x = b;
  5. }
  6. void mondai2(void){
  7. static int c=10;
  8. x = c;
  9. c++;
  10. }
  11. int mondai3(int d){
  12. x++;
  13. d++;
  14. return d;
  15. }
  16.  
  17. int main(void) {
  18. printf("x = %d[GS:グローバル変数の初期値は0だから]\n",x);
  19. x=101;
  20. printf("x=%d[GS:グローバル変数に101を代入]\n",x);
  21. mondai1(102);
  22. printf("x=%d[GS:21行目mondai1内部でxに102を代入]\n",x);
  23. mondai2();
  24. mondai2();
  25. mondai2();
  26. printf("x=%d[GS:25行目mondai2内部でcがstaticより10+1+1]\n",x);
  27. for(int i=103;i<104;i++){
  28. int x=i;
  29. printf("x=%d[LA:前文でi=103をローカル変数xに代入]\n",x);
  30. x=mondai3(i);
  31. printf("x=%d[LA:前文よりd++から103+1]\n",x);
  32. }
  33. printf("x=%d[GS:30行目の呼び出しでmondai3内部でグローバル変数のxにx++より12+1]\n",x);
  34. return 0;
  35. }
Success #stdin #stdout 0s 5320KB
stdin
Standard input is empty
stdout
x = 0[GS:グローバル変数の初期値は0だから]
x=101[GS:グローバル変数に101を代入]
x=102[GS:21行目mondai1内部でxに102を代入]
x=12[GS:25行目mondai2内部でcがstaticより10+1+1]
x=103[LA:前文でi=103をローカル変数xに代入]
x=104[LA:前文よりd++から103+1]
x=13[GS:30行目の呼び出しでmondai3内部でグローバル変数のxにx++より12+1]