2016-05-11 10 views
-6

このエラーを取り除くのを助けてください私はこれらの2つの構造を作りました。そして、私がこのエラーを示すcinを使用しようとすると、どうすればこのエラーを取り除くことができますか?また、cin.getlineを使って、 ()。エラーを削除する方法: '。'の前にprimary-expressionが必要です。トークン

#include <iostream> 

using namespace std; 
struct Date //Date structure 
{ 
    int day; 
    int month; 
    int year; 
}; 
struct Employee //employee structure 
{ 
    int Id; 
    char Name[40]; 
    int Date; 
    char Gender; 
    char Des[40]; 
}; 
void Setter(Employee E) //function for setting value in Employees 
{ 
    cout<<"Enter Id:"; 
    cin>>Employee.Id; 
    cout<<"Enter Name:"; 
    cin>>Employee.Name; 
    cout<<"Enter Gender:"; 
    cin>>Employee.Gender; 
    cout<<"Enter Designation:"; 
    cin>>Employee.Des; 
    cout<<"Enter Date of joining(DD/MM/YYYY):"; 
    cin>>Employee.Date.day>>Employee.Date.month>>Employee.Date.year; 
} 
int main() //main 
{ 
    Employee el; 
    Setter(el); //calling function 
    return 0; 
} 
+2

非常によく似ています:[エラー: '。トークン](http://stackoverflow.com/questions/15958577/error-expected-primary-expression-before-token?rq=1) – crashmstr

+0

'Employee'を' E'に変更しました。 –

+0

あなたのクラス名とあなたのプロパティの両方を大文字にすることは、他の人々を壁の上に押し上げることになります。通常は、日付の例のように、プロパティと変数を小文字で始めるのがより一般的です。さらに、名前の40文字は狂った短いです。ここで 'std :: string'を使わない理由はありますか?これは、Cスタイルの文字列バッファをコピーするよりも優れています。 – tadman

答えて

1

Employeeにデータを読み込むためのメンバーを持たないタイプの名前と自身である。 メンバーにアクセスするための変数を使用します。

さらに、参照を使用して呼び出し元のローカル変数を変更することができます。 リファレンスを使用する型名の後に&を追加します。 E.Dateのタイプはintであり、それはメンバーを持っていないのでコメント-outedライン

cin>>E.Date.day>>E.Date.month>>E.Date.year; 

が間違っていること

void Setter(Employee& E) //function for setting value in Employees 
{ 
    cout<<"Enter Id:"; 
    cin>>E.Id; 
    cout<<"Enter Name:"; 
    cin>>E.Name; 
    cout<<"Enter Gender:"; 
    cin>>E.Gender; 
    cout<<"Enter Designation:"; 
    cin>>E.Des; 
    cout<<"Enter Date of joining(DD/MM/YYYY):"; 
    //cin>>E.Date.day>>E.Date.month>>E.Date.year; 
} 

注意。構造体が日付(または3つの整数)を保持できるように、構造体の宣言を変更する必要があります。

+0

ありがとうございます – Hamid

+0

注意 'E.Date.day'はまだ動作しません。 – songyuanyao

+0

どうすればいいのですか? – Hamid

関連する問題