
No.4ベストアンサー
- 回答日時:
stdio.hの内容にこだわる必要はありません。
標準的な入出力を行うときの関数の定義がされているので、
stdio.hをincludeしないとコンパイルエラー(警告)が発生するというだけのことです。
各関数の説明を参照すると、必ずどのファイルをincludeしなければいけないかが書かれています。
printfの場合
https://linuxjm.osdn.jp/html/LDP_man-pages/man3/ …
fopenの場合
https://linuxjm.osdn.jp/html/LDP_man-pages/man3/ …
sqrtの場合
https://linuxjm.osdn.jp/html/LDP_man-pages/man3/ …
関数を呼び出すとき、「man 関数名」で検索してください。
例 man printf
その結果、Man page of PRINTFと表示されるいくつかのURLがあるので、それをクリックすると
https://linuxjm.osdn.jp/html/LDP_man-pages/man3/ …
のようなその関数の説明にたどり着けます。
printfを使うなら、stdio.h
fopenを使うなら、stdio.h
sqrtを使うなら、math.h
をincludeしなければいけないことが判ります。
あなたがこれらのライブラリの開発者を目指すのであれば話は別ですが、
特別な理由がない限り
stdio.h、math.hのなかに何が書かれているかを気にする必要はありません。
必要なことは、どの関数を呼び出すときに、どのヘッダファイルをincludeするかに留意することです。
mainではなく、manなのですね?それとprintfやscanfなどの関数の宣言が入っているのですよね?バッファなどの「など」には、一体何があるのでしょうか?
関数、型、定義でしょうか?例として、関数はprintf関数で、型がFILEで、定数が、EOFでしょうか?関数と型と定義とは何なのでしょうか?教えていただけると嬉しいです。
No.7
- 回答日時:
>バッファ以外に何が定義されているのでしょうか?
実際に読んでください。読めば全部書いてあります。他人から正しいのか正しくないのかよくわからないような情報を聞くよりもずっと正確です。また、stdio.hの中では他のヘッダファイルもincludeされていますので、それもあわせて読んでください(その先でもincludeされていて…となっていますが、その先も同様です)。
たとえばglibcのstdio.hなら、ここを起点に読んでいってみては?
https://github.com/lattera/glibc/blob/master/inc …
また、バッファ(構造体)や関数のプロトタイプ宣言だけであれば、stdio.hそのものをプリプロセッサに食わせれば、現処理系で利用可能なものが一覧っぽく表示されます(ただし、定数は見えなくなりますが)。
たとえばLinuxとかであれば、
$ cpp /usr/include/stdio.h
No.6
- 回答日時:
>関数と型と定数とは何なのでしょうか?教えていただけると嬉しいです。
しっかりした参考書を1冊読めば事足りること。
過去に数学に関するトンデモ質問で大いに迷惑をかけたことをここでも繰り返さないように。質問文も日本語として相も変わらずおかしい。
No.5
- 回答日時:
> 関数、型、定義でしょうか?
この質問に自分で答えられるくらいでないと、stdio.hの内容について理解できないと思います。
プログラミングの学習では、細かいところにこだわることも必要ですが、それと同じくらい、細かいことを気にしないことも必要です。
> stdio.h は、標準的な入出力を行う場合に必要なバッファなどが定義されているファイルです。
そもそも、この文章は正しくありません。
・言った人が間違えている。
・あなたが間違えて覚えている。
のいずれかだと思われます。
No.3
- 回答日時:
仕様としては、
https://ja.wikibooks.org/wiki/C%E8%A8%80%E8%AA%9 …
その他処理系によってそれ以外もあるかもしれませんが、
>標準的な入出力を行う場合に必要なバッファなどが定義されている
バッファは定義されないことが多いと思います。
inline な static 関数だともしかしたらあるかもしれませんが、
一般的には、定義されるのはバッファの情報くらいです。
No.2
- 回答日時:
(極々稀な例外を除けば)stdio.hはC言語で書かれたテキストファイルなので、実際に読めばわかります。
また「C言語 標準ライブラリ stdio」で検索かければ、リファレンスマニュアルとか解説とかがたくさん見つかります。
No.1
- 回答日時:
printfやscanfなどの組込関数の定義です。
sqr(sqrtだったかも)のような平方根の関数は、stdio.hには入っていません。math.h(だったかな?)の定義も必要です。つまり、printf やscanfなどの関数の宣言が入っているのですよね?バッファなどの「など」には、一体何があるのでしょうか?関数、型、定数でしょうか?
例として、関数は、printf関数で、型が、FILEで、定数が、EOFでしょうか?
関数と型と定数とは何なのでしょうか?教えていただけると嬉しいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【教えて!goo ウォッチ 人気記事】風水師直伝!住まいに幸運を呼び込む三つのポイント
記事を読む>>
-
C言語について
C言語・C++・C#
-
C言語について。
C言語・C++・C#
-
C言語について。
C言語・C++・C#
-
-
4
C言語について。
C言語・C++・C#
-
5
最近の流行りのプログラム言語はC++と比較すると
C言語・C++・C#
-
6
C言語 コマンドプロンプトについて。
C言語・C++・C#
-
7
C言語について。
C言語・C++・C#
-
8
S-JIS → JIS コード変換するには
C言語・C++・C#
-
9
ファイルがあるのにエクスプローラでは存在しない
C言語・C++・C#
-
10
c言語でユーザ関数を利用して複素数のべき乗と絶対値の数列を計算するプログラムが作りたいです。
C言語・C++・C#
-
11
c言語でユーザ関数を利用して入力された文字列を反転させるプログラムを作りたいです。
C言語・C++・C#
-
12
visual studio 2019において、宣言していない変数があるのにエラーなくビルド出来ました
C言語・C++・C#
-
13
C言語初心者です、、、お助けください
C言語・C++・C#
-
14
ある線が円の範囲に入っているかの計算
C言語・C++・C#
-
15
c言語について array[i]-‘0’ これってどーゆー意味ですか? (ちなみに16進数を10進数
C言語・C++・C#
-
16
C言語のwhileを含む関数について
C言語・C++・C#
-
17
C言語です このプログラムに自分で定義した関数を入れたいです! アドバイスください!
C言語・C++・C#
-
18
プログラミング c言語
C言語・C++・C#
-
19
C言語について教えて欲しいです。 ファイルの中身をコピーするプログラムを作ってます aというファイル
C言語・C++・C#
-
20
C言語 少しの疑問
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
リターンキー又は、スペースキ...
-
5
Expression: nptr != NULL
-
6
整合フィルタ(matched filter)...
-
7
クレーンでのCFブレーキとな...
-
8
スペクトルの Fitting について
-
9
交流、パルス波、バースト波
-
10
音声波形を表示する
-
11
モータの巻線係数って何でしょ...
-
12
火力発電 蒸気タービンのMSV、C...
-
13
第5調波や第3高調波って何です...
-
14
SPI 非言語の問題です
-
15
RCフィルタと三角波、方形波
-
16
複数のシリンダーの同調化にコ...
-
17
AI(人工知能)が数学の問題を...
-
18
R-C直列回路にLを接続した時の...
-
19
入力容量(Input Capacitance)...
-
20
油圧式エレベーター
おすすめ情報
公式facebook
公式twitter