ここでは、ポインタに関して理解するために、int型ポインタを関数に渡した場合の挙動を紹介します。 サンプル #include <stdio.h> void funcA(int i) { i = 7; } void funcB(int *i) { (*i) = 222; } int main() { int a = 1; printf("a=%d\n", a); funcA(a); printf("after funcA() : a=%d\n", a); funcB(&a); printf("after funcB() : a=%d\n", a); return 0; } 上記例を実行すると「1」以下のように表示されます。 > ./a.out a=1 after funcA() : a=1 after funcB() : a=222 この結果を見ると、funcA()の中で変数の値を変更しても