C言語なら俺に聞け! Part 109
■ このスレッドは過去ログ倉庫に格納されています
0085デフォルトの名無しさん
2005/06/24(金) 00:12:43おまえが作ったプログラムから呼び出される printf だとか scanf だとかその他もろもろの関数ってのは、
その中身(=実体)を誰かがコーディングしておいてくれてるわけ。
おまえが作ったプログラムをコンパイルして実行ファイルを作ると、お前の作ったプログラムに
そのだれかが作っておいてくれたプログラムコードがくっつけられるわけ。
そのくっつけられる printf だとか scanf だとかの実体のことが、ライブラリルーチン。
ちなみに、そのくっつける処理のことをリンク、くっつけるプログラムのことをリンカって言う。
printf だとか scanf だとかは、おそらくおまえが書こうとしても書けないくらい複雑なルーチンで、マジメに作ると
そのプログラムサイズもそこそこ大きいものとなる。
そこで、一部機能を省略して、プログラムサイズを抑えた printf や scanf がある。
ここで省略された機能が、小数に関する処理。
%f だとかの小数に関することが指定されると、エラーを起こして終了するように作られてる。
おまえの環境では、普通にコンパイルして実行ファイルを作ると、この省略版のライブラリが使われるんだろ。
だから、おまえが小数を使ったプログラムを作ったならば、省略版じゃないほうのライブラリをリンクしてもらうよう、
コンパイルのときにオプションをつけて指定しなくちゃいけない。
その方法は、おまえの環境のマニュアルなりなんなりを読むと書いてあるだろう。
■ このスレッドは過去ログ倉庫に格納されています