fork(1) download
  1. #include <stdio.h>
  2.  
  3. int x;
  4.  
  5. void mondai1(int b) {
  6. x = b;
  7. }
  8.  
  9. void mondai2(void) {
  10. static int c = 10; //グローバル
  11. x = c;
  12. c++;
  13. }
  14.  
  15. int mondai3(int d) {
  16. x++;
  17. d++;
  18. return d;
  19. }
  20.  
  21. int main(void) {
  22. printf("x = %d;何も宣言されていなく、0で初期化\n", x);
  23. x = 101;
  24. printf("x = %d;xを置き換えた上記の101が\n", x);
  25. mondai1(102);
  26. printf("x = %d;102に置き換わったmondai関数によって\n", x);
  27. mondai2();
  28. mondai2();
  29. mondai2();
  30. printf("x = %d;最初10だったが上に3回宣言されているから10,11,12となり12が出てくる\n", x);
  31. for (int i = 103; i<104; i++) {
  32. int x = i;
  33. printf("x = %d;for文内でi=103となっていてそれがxに置き換わっている\n", x);
  34. x = mondai3(i);
  35. printf("x = %d;103からmondai関数によって1増加し104に\n", x);
  36. }
  37. printf("x = %d;グローバル変数が12だったが、1増加して13に\n", x);
  38. return 0;
  39. }
Success #stdin #stdout 0.01s 5320KB
stdin
Standard input is empty
stdout
x = 0;何も宣言されていなく、0で初期化
x = 101;xを置き換えた上記の101が
x = 102;102に置き換わったmondai関数によって
x = 12;最初10だったが上に3回宣言されているから10,11,12となり12が出てくる
x = 103;for文内でi=103となっていてそれがxに置き換わっている
x = 104;103からmondai関数によって1増加し104に
x = 13;グローバル変数が12だったが、1増加して13に