2011-07-14 15 views
2

こんにちは、私はC++の初心者です。私のコードはユーザの入力を受け取り、それらを配列に送ります。今私は入力文字列を取得するgetline()を使用しています。次のように私のコードは次のとおりです。getline()は、出力文字列の最初の文字を省略します。

cin.getline(cb[0].name, 200).get();  // Cadburry 
cin.getline(cb[1].name, 200).get();  // Snickers 
cin.getline(cb[2].name, 200);    // Milky Bar 

しかし、ときに私は、出力文字列を、最初のgetline()は罰金のようですが、他の2つは、文字列の最初の文字を省略しています。したがって、この場合の出力は次のようになります。

Cadburry 
nickers 
ilky Bar 

誰でも私にその理由を教えてください。

答えて

5

get()コールがSとMを消費しており、それらを削除すると機能します。 getline()は既に\ nを使用しています。\

+0

ご迷惑をおかけしていただきありがとうございます – Naphstor

関連する問題