This is a very strange problem, when my program asks the user for the address, instead of waiting for input, it seems to skip the getline() function completely
Answerinput:
cout << "would you like to add another entry to the archive? (Y/N):";
cin >> answer;
cout << endl;
cout << endl;
answer = toupper(answer);
 switch(answer)
    {
    case 'Y':
        Entrynumber++;
        cout << "began record number " << Entrynumber << "+ 1." << endl;
        cout << "Enter the last name of the person to be entered" << endl;
        cin >> stringentry;
        cout << endl;
        stringlength = stringentry.length();
        strcpy(Record[Entrynumber].Last_Name, stringentry.c_str());
        Record[Entrynumber].Last_Name[stringlength] = '*';
        cout << "Enter the first name of the person" << endl;
        cin >> stringentry;
        cout << endl;
        stringlength = stringentry.length();
        strcpy(Record[Entrynumber].First_Name, stringentry.c_str());
        Record[Entrynumber].First_Name[stringlength] = '*';
        cout << "Enter the SSN of the person" << endl;
        cin >> Record[Entrynumber].SSN;
        cout << endl;
        cout << "Enter the age of the person" << endl;
        cin >> Record[Entrynumber].Age;
        cout << endl;
        cout << "Enter the address of the person" << endl;
        cin.getline(Record[Entrynumber].Address,70);
        cout << endl;
        stringentry = Record[Entrynumber].Address;
        stringlength = stringentry.length();
        Record[Entrynumber].Address[stringlength] = '*';
        cout << "you entered:" << endl;
        for(jim = 0 ; Record[Entrynumber].Last_Name[jim + 1] != '*' ; jim++)
        {
            cout << Record[Entrynumber].Last_Name[jim];
        }
        cout << ',' ;
        for(jim = 0 ; Record[Entrynumber].First_Name[jim + 1] != '*' ; jim++)
        {
            cout << Record[Entrynumber].First_Name[jim];
        }
        cout << endl;
        cout << Record[Entrynumber].SSN << endl;
        cout << Record[Entrynumber].Age << endl;
        for(jim = 0 ; Record[Entrynumber].Address[jim + 1] != '*' ; jim++)
        {
            cout << Record[Entrynumber].Address[jim];
        }
        cout << endl;
        cout << endl;
        goto Answerinput;
    case 'N':
        cout << "ok" << endl;
        break;
    default:
        cout << "invalid answer" << endl;
        goto Answerinput;
    }
output to console
would you like to add another entry to
the archive? (Y/N):Y
began record number 6+ 1. 
 Enter the last name of the person to be entered 
 John
 Enter the first name of the person 
 John
 Enter the SSN of the person  22222222
 Enter the age of the person  22
 Enter the address of the person
 you entered: 
Joh,Joh 
22222222 
22
 *¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
 //////////////22 more lines of'|'//////////////////////////////////////////////
 ... 
¦¦¦¦¦¦¦¦l3-j
 would you like to add another entry to the archive? (Y/N):
Both cin.getline() and getline() do the same thing.
I'm using MVC++ 2008.
All of the fields in the Record array are structs, Record[Entrynumber].Address is a char array.
 
     
    