pointer2.c

/*

  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;

}

[^] [<<] [<] [>]