次のプログラムにおける、各変数のスコープを示して下さい。
- (a)プログラムリスト
#include <stdio.h> int g = 10; int test(int h); int main(int argc, char *argv[ ]) { int h; h = g; test(h); } test(int k) { int n; for(n = 0; n < k; n++) { int m = 0; printf("%d, %d, %d\n", k, n, m); } }
- (b) 解答の一例
- プログラムで使われている変数と、そのスコープは以下の通りです:
g :プログラム全体
main.argc :手続きmain内
main.argv :手続きmain内
main.h :手続きmain内
test.k :手続きtest内
test.n :手続きtest内
test.for.m :手続きtest内のfor文の本体中