
一昔前のC言語では、#include <stdio.h>などのものを、C ++言語では、#include <iostream>の1行で済ませるということでしょうか?
だけど、C + +言語で、#include<stdio.h>を使いたければ使うことは出来ますよ。だけど、#include<iostream>だけで、済みますよ。という事でしょうか?つまり、#include<iostream>は、全ストリームつまり、全ファイル・全ライブラリを1つにまとめたという事でしょうか?教えて頂けると幸いです。
で、チャットGPTに聞きました。
C++言語において、#include <iostream>はC言語の#include <stdio.h>に似た機能を果たしますが、直接的な一対一の比較ではありません。#include <iostream>はC++の標準入出力ライブラリであり、std::coutやstd::cinなどを含む機能を提供します 一方で、#include <stdio.h>はC言語の標準入出力ヘッダであり、C++でも使用可能ですが、C++の標準ライブラリである<iostream>が提供する機能とは異なります。
簡潔に言えば、#include <iostream>は標準的なC++の入出力機能をまとめて提供しているもので、全てのファイルやライブラリを含んでいるわけではありません。
という事であっているのでしょうか?後、C言語とC++では、標準入出力が異なるよ。ということでしょうか?
教えて頂けると幸いです。
A 回答 (8件)
- 最新から表示
- 回答順に表示
No.8
- 回答日時:
> 所で、int main() { return 0;}というのはどういうプログラムなのでしょうか?教えて頂けると幸いです。
ほとんどすべてのCプログラムに、int main() も return 0; も使われていますが、これが読めないというのは、Cを全く知らないと言うことなのでしょうか??
一応説明すると、「完了コード0で修了するプログラム」です。ヘッダファイルを使わないサンプルとして挙げたので、関数が呼べないので、「最小の正しいプログラム」ですかね。Unix/Linuxだと、/usr/bin/true コマンドの中味がこれです。
これが分からないとすると、逆にC/C++について、何を知っていますか?
No.7
- 回答日時:
> Cからはインクルード不可とはどういう意味でしょうか?
「インクルード不可」とは「インクルードできない」という意味です。
#include <iostream>
と書いてコンパイルするとコンパイルエラーになります。
> 後、C言語で、 printf関数にあたるC++は何なのでしょうか?
printfはそのまま C++ で使えるので、
#include <stdio.h>
と書いて、printfを使えば良いです。
C++ であろうが printf を使うためには stdio.h が必要です。
Cのヘッダ・関数は(もしかすると例外があるかもですが)C++でも使えます。
迅速な回答ありがとうございます。所で、int main() { return 0;}というのはどういうプログラムなのでしょうか?教えて頂けると幸いです。
No.6
- 回答日時:
「標準入出力」はOSの機能であって、C言語の機能ではありません。
stdioは「C言語設計者が『C言語の標準』と考える方法による入出力」をみんなで共有するための仕組みです。OSの標準入出力とは直接の関係はありません。
なので、stdioを使わずにOSの標準入出力にアクセスすることもできます。
「ボクの考えた方法による入出力」を使うこともできます。
iostream は「C++言語設計者が『C++言語の標準』と考える方法による入出力」です。
C言語のstdioの方法はC++には似わないと考えて作られました。
> 言語の printf関数にあたるC++の関数は何なのでしょうか?
答えは2つあります。
(1) iostreamにはありません。
そもそもの考えが違うので、printfにピッタリ該当するものはiostreamにはありません。
printfで何をどう出力しようとしているかを考え、それを std::cout で記述するにはどうするかを考えます。
(2) C言語との互換のために、cstdioが用意されています。
https://cpprefjp.github.io/reference/cstdio.html
No.5
- 回答日時:
No.4
- 回答日時:
ヘッダをインクルードするのは、何らかの関数・変数を使うためです。
printf や fopenを使いたければ、CでもC++でも、stdio.h のインクルードが必要です。stdio.hで定義されている物を全く使わないならCでも不要。int main() { return 0; } とか。
C++ で、std::cout 等を使いたければ iostream のインクルードが必要です。iostream で定義されている物を全く使わないなら不要。(Cからはインクルード不可)
sin cos 等の数学関数が使いたければ math.h のインクルードが必要だとか、いろいろ同じ事です。
Cからはインクルード不可とはどういう意味でしょうか?後、C言語で、 printf関数にあたるC++は何なのでしょうか?教えて頂けると幸いです。
No.3
- 回答日時:
stdio.hとiostream.hの違いはヘッダファイルを開けばわかります。
違いはこれを参考にしてください
https://docs.oracle.com/cd/E19957-01/805-7889/6j …
https://docs.oracle.com/cd/E19957-01/805-7889/z4 …
http://nalab.mind.meiji.ac.jp/~mk/labo/text/welc …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語 ストリームについて。 1 2023/11/18 09:14
- C言語・C++・C# Win10のVS2022のForm AppからC++コンソールLibraryの質問 1 2022/02/04 10:00
- C言語・C++・C# C++のcinの動作 5 2023/02/26 00:13
- C言語・C++・C# C++プログラミングコードにポリモーフィズムを取り入れ方を教えてください。 2 2023/06/09 11:17
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# 以下のc言語コードを利用して、ファイルに書き込むプログラムを作成したいですけど、見本とか教えてくださ 3 2021/11/23 19:07
- C言語・C++・C# C++初心者です stirng 2 2022/09/20 20:43
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# 年齢、体重、身長を入力してBMIとカウプ指数とロレール指数で肥満、標準、痩せすぎを判断するc言語のプ 3 2021/12/17 11:49
- C言語・C++・C# const char** p;のとき、free(p)でC4090エラーとなるのはなぜですか 3 2023/03/31 16:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
python urlopen error について...
-
Windows Media Playerを開くと...
-
C++ 標準ライブラリの実際の中...
-
システムコールと標準ライブラ...
-
iCloudフォトライブラリ内の画...
-
Dreamweaverのライブラリが反映...
-
32768以上の乱数を作りたいので...
-
unix-c と linux-c の違いは?
-
DirectX Graphics と OpenGLっ...
-
C# EXCELセルの入力規則設定に...
-
Access2000のVBAでSHA-256ハッ...
-
本格的なGUIを作るのにおすすめ...
-
esp32のble
-
C++で開発可能なリアルタイムCG...
-
VHDLの記述についての質問です
-
declaration of 'index' shadow...
-
勝手に別の音楽が流れるアマゾ...
-
ライブラリ作成時のグローバル...
-
WAVE⇔MP3のためのライブラリ
-
pygame.error: File is not a W...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Windows Media Playerを開くと...
-
Google ColaboでGUI作成
-
本格的なGUIを作るのにおすすめ...
-
python urlopen error について...
-
Dreamweaverのライブラリが反映...
-
ライブラリ作成時のグローバル...
-
マウスのクリックを自動で
-
C++ 標準ライブラリの実際の中...
-
グローバルサイトのフォームバ...
-
unix-c と linux-c の違いは?
-
静的ライブラリから静的ライブ...
-
C# EXCELセルの入力規則設定に...
-
ISOイメージの作成方法について
-
【iTunes】CDをiPhoneに取り込...
-
WAVE⇔MP3のためのライブラリ
-
iPhoneのカメラロールへ画像を...
-
sleep関数
-
MFC/C++ sprintf の代わりに <<
-
VB.NET Blowfishで文字列を暗号化
-
設定ファイルを扱うライブラリ...
おすすめ情報
もしかして、C言語とC++の#include<studio.h>と#include<iostream>の違いは、C++では、C言語の printfなどの関数を使わなくてもいけるし、C++では、C言語の printf関数よりももっと便利な関数があるよ。という事でしょうか?教えて頂けると幸いです。