『C実践プログラミング』を参考にやってみた。
C
earth_federation.c
#include <stdio.h> int main() { char gundam; char *bright_command_ptr; gundam = 'A'; printf("Gundam pilot: %c\n", gundam); bright_command_ptr = &gundam; *bright_command_ptr = 'S'; printf("Bright Command: %c\n", *bright_command_ptr); printf("Gundam pilot: %c\n", gundam); return 0; }
『*』と『&』の扱いに注意
gundam 変数 &gundam 変数gundamのアドレス(ポインタ)を返す bright_command_ptr ポインタ ("bright_command_ptr = &gundam"でbright_command_ptrは変数gundamを指す) *bright_command_ptr ポインタが指しているオブジェクトを返す。
解説
地球連邦軍(Earth Federation).c
ガンダム配備 *ブライトを艦長に任命 ガンダムに搭乗 = アムロ('A') ブライトに指揮権 = &ガンダムの搭乗者を任命 *ブライトが艦長命令を下す(ガンダムの搭乗者を指示) = セイラ('S')に搭乗させる。
実行結果
Gundam pilot: A Bright Command: S Gundam pilot: S
う〜んいまいち?(´・ω・`)