

No.2ベストアンサー
- 回答日時:
C++ 標準のヘッダファイルでも、たとえば、以前は、#include <iostream.h> でしたが、最近は、#include <iostream>
になっています。
これは、もともと、「名前空間」という概念が導入されたときに、そのあおりで変わりました。
従来の標準関数は、名前空間、std の中に収まりました。なので、標準関数と同じ名前の関数も(グローバル関数としてや、別の名前空間の関数として)使用可能になりました。
標準関数の名前の衝突は(標準関数なだけに)あまりないですが、いろいろなライブラリをつなぎ合わせると、read() があちこちにあったりという、そういう場合に、ライブラリごとに適切な名前空間を設定すれば、名前の衝突を防ぐとこができますということです。
さて、この時に、Cの標準ヘッダとどうしようかということになりました。
同じように、 stdio.h を stdio というように読み替えれば、問題はなさそうですが、なんと、時を同じくして、C++に、string という定義が導入されました。
これが、同じく、Cの標準ヘッダである、string.h とぶつかります。
これを解決するためもあって、Cの標準ヘッダは、 stdio.h → cstdio ということになったわけです。
そういう意味では、少なくとも、 #include <iostream> としているなら、#include <cstdio> でしょう。
回答ありがとうございます。
> そういう意味では、少なくとも、 #include <iostream> としているなら、#include <cstdio> でしょう。
よくわかりました。ありがとうございます。
No.1
- 回答日時:
math.hやstdio.hは過去のコードとの互換性のために使えるようになっているだけです。
新規作成するコードではcmathやcstdioを使ったほうがよいでしょう。
http://www.open-std.org/jtc1/sc22/wg21/docs/pape …
のAnnex D compatibility featuresとD.5 C standard library headersを御覧ください。
ということを最近http://oshiete.goo.ne.jp/qa/8344888.htmlで書いたような...
> ということを最近http://okwave.jp/qa/q8344888.htmlで書いたような...
その質問と回答をみて、それだけではわからなかったので質問しました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java Javaについて、mathクラスを使わずに15➗3の結果を切り上げる方法を教えてください…!! 3 2023/04/28 21:37
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- 英語 和訳の手伝いをお願いします 2 2023/02/27 11:42
- その他(学校・勉強) be+〜ing の文と I +〜ing の文の違いってなんですか 例) I am reading a 2 2022/08/23 16:35
- 大学・短大 (大学数学)こういった問題集が欲しいです。 3 2022/10/01 11:54
- C言語・C++・C# 写真のc言語の問題がa以外わかりません。 正直aも自信がなく、解説していただけないでしょうか? 答え 3 2022/04/29 18:21
- C言語・C++・C# VisualStudioでC++クラスを追加するとき、ファイルを所定のフォルダ下につくりたい 3 2023/08/24 17:17
- Windows 10 windowsの回復ドライブや復元ポイントを使用した場合の戻る位置を教えてください。 5 2023/08/19 14:52
- その他(パソコン・周辺機器) USB type A to USB type C変換アダプターについて 4 2022/06/18 07:44
- 国産車 セレナC26の後席A/C使用時の燃費について 3 2022/09/23 11:49
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
_tcscat がうまくいきません(V...
-
gccでコンパイル時のエラー
-
構文エラーが出ているのですが...
-
CStdioFile での数値データの読...
-
switch文のエラーについて
-
includeファイルが開けない
-
C++ 平均値、最大値と最小値の...
-
RS232cと通信が可能な、Cまたは...
-
構造体に決められた文字列を入...
-
C言語のポインターで詰まっている
-
#include "fstream.h"
-
Enterキーを押されたら次の処理...
-
「Aに対するBの割合」と「Aに対...
-
複数桁10進数の*桁目だけを抽出...
-
float と double
-
float型とdouble型の変数の違い...
-
[C++]メンバ関数の仮引数について
-
Aの値からBの値を除するとは??
-
関数の呼び出し
-
プログラム、どのように書いて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
なぜ、C++の標準ヘッダをインク...
-
switch文のエラーについて
-
VC++で文字列から任意の文字を...
-
構文エラーが出ているのですが...
-
gccでコンパイル時のエラー
-
空ENTERの判別
-
vectorのイテレータを大小比較...
-
JPEGやPNGが読めるLoadImage関数
-
C++で、テキストファイルを一行...
-
std::wstringのメモリリークに...
-
enumの値から定義名を文字列化...
-
CStringとString
-
#define中の#のエスケープ
-
std::map の const 修飾について
-
#include "fstream.h"
-
_tcscat がうまくいきません(V...
-
C言語のポインターで詰まっている
-
構造体配列のvectorへの変換と...
-
C++での <iostream.h>と<iostre...
-
ヘッダーファイルがインクルー...
おすすめ情報