プログラミング言語Cとプログラミング言語C++の違いって何ですか?
あと、プログラミング言語C++についていくつか質問があります。
#include <iostream>
using namespace std;
void main(){
cout << "Hello world!" << endl;
}
このプログラムについて質問なんですが、iostreamってプログラミング言語Cで言うstdio.hのことですか?
using namespace stdって何ですか?
あと、 cout <<"Hello world!"って何ですか?
No.4ベストアンサー
- 回答日時:
> プログラミング言語Cとプログラミング言語C++の違いって何ですか?
C++は、Cのほぼ全ての仕様を含み、クラス、テンプレート、例外処理など大幅に機能拡張した言語です。
細部の違いが知りたければ、下記を参照してください。
http://www.kijineko.co.jp/tech/cpp2c
> このプログラムについて質問なんですが、iostreamってプログラミング言語Cで言うstdio.hのことですか?
違います。
C++にもstdio.hがありますし、cstdioというヘッダもあります。
iostreamヘッダは、cin, cout, cerr, clogとそれらのワイド文字版を宣言するためのものです。
ですので、iostreamヘッダで宣言・定義される関数やクラスを使うだけでは一般的なファイルの操作はできませんし、sprintfやsscanfに相当するものもありません。
また、removeやrenameなど、ストリームとは関係のない操作も含まれていません。
> using namespace stdって何ですか?
「using指令」によって、名前空間stdの中にある名前を大域的名前空間でも使えるようにするものです。
せっかく名前空間を分けているのに、それを無効にしてしまうような機能ですから、安易にusing指令を使うのはお勧めしません。
> あと、 cout <<"Hello world!"って何ですか?
標準出力に対して、文字列"Hello, world!"を出力します。
ちなみに、endlは、改行を出力したあと、バッファにたまった内容を実際に吐き出します(フラッシュします)。単なる改行の出力ではないので要注意です。
C++の仕様は結構大きい方なので、遭遇した記述をひとつひとつ質問していたのではキリがありません。
まずは入門書を一冊読み、わからない用語等については、処理系のリファレンスを読むか、ネットで検索するなどしてください。
No.3
- 回答日時:
>using namespace stdって何ですか?
標準入出力を使うという意味です。
これを書かないとソース上に
stdと何回も書かなければならなくなります。
>cout <<"Hello world!"って何ですか?
Hello Worldと表示するという意味です。
#include <cstdio>
using namespace std;
void main(){
printf "Hello world!" \n
}
というのでも同じ意味です。
No.2
- 回答日時:
どんな入門書でも書いてありそうなことばかり聞かれてもね・・・
C言語
http://ja.wikipedia.org/wiki/C%E8%A8%80%E8%AA%9E
C++
http://ja.wikipedia.org/wiki/C%2B%2B
>iostreamってプログラミング言語Cで言うstdio.hのことですか?
>using namespace stdって何ですか?
>cout <<"Hello world!"って何ですか?
ggrks!
No.1
- 回答日時:
C++はクラス定義が出来、関数オーバーロードやクラス継承、関数オーバーライドが可能です。
基本的にオブジェクト指向を目指したプログラミング言語です。以前は基本的にCの上位互換でしたが、ISOの規格化の変遷などで今は完全な互換性はなくなりました。
> iostreamってプログラミング言語Cで言うstdio.hのことですか?
ある意味似たようなものです。
ただし、iostreamのほうはクラスライブラリがついているのでより高機能です。
cout オブジェクトに << 演算子で各種のデータを出力することができます。
coutは「Console Outut」の略だったかな。endlは「End Line」で改行です。
例えば
#include <iostream>
using namespace std;
int main(){
int i = 100;
cout << "I am foo ";
cout << "Hello world! i=" << i << endl;
return 0;
}
のような記述も可能です。この場合は「I am foo」では改行しません。
ただし、個人的にはiostreamは数値の出力書式の指定ができないし、オブジェクト指向としてどうも違和感を感じますね。
JavaやC#は結局staticメソッドに戻ってしまいました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
構文エラーが出ているのですが...
-
switch文のエラーについて
-
なぜ、C++の標準ヘッダをインク...
-
VC++で文字列から任意の文字を...
-
指定した文字を削除したい
-
#define中の#のエスケープ
-
VxWorks 6.4ソケット接続につい...
-
string型の固定長文字列を配列...
-
findnext();について
-
C++でのeの近似値の求め方
-
std::wstringのメモリリークに...
-
VHDLのsignedとunsignedの違いは?
-
_CRT_SECURE_NO_DEPRECATE が効...
-
#include "fstream.h"
-
C++がコンパイルできない...
-
iostream インクルード時に発生...
-
c++ ファイルの列挙ができない(...
-
C++ 数値データファイルから2次...
-
C++で縦の棒グラフ
-
c言語の配列を使ってサイコロを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
構文エラーが出ているのですが...
-
switch文のエラーについて
-
VC++で文字列から任意の文字を...
-
#include "fstream.h"
-
空ENTERの判別
-
enumの値から定義名を文字列化...
-
_tcscat がうまくいきません(V...
-
gccでコンパイル時のエラー
-
std::wstringのメモリリークに...
-
JPEGやPNGが読めるLoadImage関数
-
なぜ、C++の標準ヘッダをインク...
-
C言語のエラーを修正したい
-
名前空間でビルドエラー(LNK20...
-
リモートデスクトップの接続元I...
-
構造体配列のvectorへの変換と...
-
C言語のポインターで詰まっている
-
vectorのイテレータを大小比較...
-
wstringの主力
-
CStringとString
-
#defineの使い方について
おすすめ情報