1. ホーム
  2. c++

[解決済み] C++で「'std:cin.std'に'operator>>'に一致するものがない」というエラーが発生しました。

2022-02-05 05:40:47

質問

#include <iostream>

int main()
{
    using std::cout;
    using std::endl;
    using std::cin;
    short width;
    short legnth;
    short height;
    short volume;
    volume = (legnth * width * height);

    cout << "This program will determine the volume of a cube" << endl;
    cout << "Enter the legnth of the cube: ";
    cin >> legnth >> endl;
    cout << "Enter the width of the cube: ";
    cin >> width >> endl;
    cout << "Enter the height of the cube: ";
    cout << "Your volume is: " << volume;
    cout << "Press any key to exit :)";
    cin.get();

    return 0;

私はC++の初心者です。コンピュータプログラミングの基礎の授業で、体積を計算できるものを作らなければなりませんでした。誰かこのエラーを修正するのを手伝ってくれませんか?

}

解決方法は?

std::endl は入力ストリームではなく、出力ストリームに使用されます。初心者が納得するのであれば、私はそれに反論します。なぜなら、入力ストリームには改行を入れることができますが(ユーザーからの入力を取得したいのであれば、ほとんどの場合そうする必要があります)、一方 std::endl とは単純に動作しません。 std::cin .

また、入力した内容を確認するために"Enter"キーを押すと、改行文字も出力ストリームに出力されるので、実際には必要ないのではと思います。