プログラミングには新しく、structプログラムをC++で実装しようとしましたが、単純なプログラムですが、適切な結果が表示されません。どうしてか言ってくれない?関数getAndPrintでなぜプログラムが正常に動作していないのですか?
#include <iostream>
using namespace std;
struct classroom {
int number;
char name[9];
int marks;
void getAndPrint()
{
cout << "struct classroom ";
cin >> number;
cout << number << '\n';
cin.get(name, 9);
//cin>>name;
cout << name;
cin >> marks;
cout << marks;
}
};
int main()
{
classroom room1;
room1.getAndPrint();
int i;
cin >> i;
return 0;
}
()私はcin.getを使用しています()。。コンパイラは、「番号」を印刷するまで、正しく実行それがcin.getになると(名前、9)それはゴミを印刷します関数内の残りのコードをスキップします。私がcin >> nameを使用している場合、正しく動作しています。 誰かが問題を正確に伝えることができますか?
あなたは 'cin.get'について読んでみたいと思います。 C++ストリームは理解するために重要です。また、無関係のメモでは、決してあなたの関数を呼び出すことはありません。 –
C++の本で、フォーマットされた操作と書式なしの操作を特に重視したC++ストリームの章を読む必要があります。 –
*本当に* '* std :: string'が必要な場合以外は' char [] 'を使用しないでください! –