このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1294061094/455
#  [1] 授業単元: Cプログラミング演習2 
#  [2] 問題文(含コード&リンク): 2つ unsighned char型のポインタ変数を用意する。 
#  キーボードから数値を入力し、 malloc を用いて、1つめのポインタに入力数値バイト分のメモリを確保する。 
#  次に2つめのポインタに固定バイト数(いくつでも良いが、例えば16)分のメモリを確保する。 
#  この時、2つのポインタが指すアドレスが連続しているかどうか確認するプログラムを作成せよ。 
#  

'2つ unsighned char型のポインタ変数を用意する。キーボードから数値を入力し、 malloc を用いて、1つめのポインタに入力数値バイト分のメモリを確保する。次に2つめのポインタに固定バイト数(いくつでも良いが、例えば16)分のメモリを確保する。この時、2つのポインタが指すアドレスが連続しているかどうか確認する' :-
        get_integer(_数値),
        malloc(_数値,_先頭アドレス),
        _続きのアドレス is _先頭アドレス + _数値,
        malloc(16,_先頭アドレス2),
        '2つのポインタが指すアドレスが連続しているかどうか確認する'(_続きのアドレス,_先頭アドレスの二,_診断),
        wr('%t\n',[_診断]).

'2つのポインタが指すアドレスが連続しているかどうか確認する'(_アドレス,_アドレス,連続しています) :- !.
'2つのポインタが指すアドレスが連続しているかどうか確認する'(_,_,連続していません) :- !.