Hello, Worldプログラム 解答ページ | Programming Place Plus Modern C++編【言語解説】 第1章

トップページModern C++編 C++編](../../index.html) – 第1章

Modern C++編は作りかけで、更新が停止しています。代わりに、C++14 をベースにして、その他の方針についても見直しを行った、新C++編を作成しています。
Modern C++編は削除される予定です。

問題①

問題① iostreamヘッダの機能を使う形で、実行結果が次のようになるプログラムを作成してください。

Hello,
World


たとえば、次のように書けます。

#include <iostream>

int main()
{
    std::cout << "Hello," << std::endl;
    std::cout << "World" << std::endl;
}

実行結果:

Hello,
World

std::endl に「改行」の意味が含まれているので、これで良い訳です。

ただし、std::endl には「フラッシュ」の意味も含まれているので、上の方法では、2回フラッシュしています。 続けざまの出力なので、フラッシュは最後に1回行うだけでもいいでしょう。 そのように考える場合、次のように書けます。

#include <iostream>

int main()
{
    std::cout << "Hello,\n";
    std::cout << "World" << std::endl;
}

実行結果:

Hello,
World

書き方のバリエーションはまだまだあります。 たとえば、次のような書き方はいずれも正しいです。

std::cout << "Hello,\nWorld" << std::endl;
std::cout << "Hello,\n" << "World" << std::endl;
std::cout << "Hello," << "\n" << "World" << std::endl;


問題②

問題② コマンドライン引数を1行に1つずつ、標準出力へ出力するプログラムを作成してください。


コマンドライン引数に関わる部分は、C言語と同じです。

#include <iostream>

int main(int argc, char* argv[])
{
    int i;

    for (i = 1; i < argc; ++i) {
        std::cout << argv[i] << std::endl;
    }
}

コマンドライン引数:

100 abc 2.5

実行結果:

100
abc
2.5

変数i を for文の側で定義して、for (int i = 1; i < argc; ++i) のように書いても構いません。第3章で取り上げますが、この位置で変数を宣言することが C++ では許されます。また、C言語であっても C99以降であれば、同様に許されています(C言語編第22章)。


参考リンク


更新履歴

’2017/7/3 新規作成。



第1章のメインページへ

Modern C++編のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る