/* e02999ab 環境太郎 ポインタの基本的な使い方2 pointer2.c gcc -o pointer2 pointer2.c ./pointer2 */ #include <stdio.h> int main( void ) { int i = 100; double d = 1.23; int * ip = NULL; /* ipが何も指していないことを示すためにNULLで初期化 */ double * dp = NULL; /* dpが何も指していないことを示すためにNULLで初期化 */ ip = &i; /* iのメモリアドレスをipに代入 */ dp = &d; /* dのメモリアドレスをdpに代入 */ if( ip != NULL ) *ip = 5; /* ipがNULLでなければ,ipの指している先,つまりiの値を5に変更 */ if( dp != NULL ) *dp = 2.34; /* dpがNULLでなければ,dpの指している先,つまりdの値を2.34に変更 */ printf( "i is %d\n", i ); /* iの値が変更されている */ printf( "*ip is %d\n", *ip ); printf( "d is %f\n", d ); /* dの値が変更されている */ printf( "*dp is %f\n", *dp ); return 0; } |