2011-07-08 13:18:56 UTC
# include
# include
using namespace std;
const int MAX = 80;
class Student
{
private:
long SSN;
char name[MAX];
public:
Student( );
void setSSN(long);
void setName(char const*);
char const* getName( );
long getSSN( );
};
Student::Student( )
{
char name[MAX] = "unassigned";
long SSN = 999999999;
}
void Student::setSSN(long num)
{
SSN = num;
}
long Student::getSSN( )
{
return SSN;
}
void Student::setName(char const* stu)
{
name[MAX] = stu[MAX];
}
char const* Student::getName( )
{
return name;
}
int main( )
{
Student student1, student2;
cout << "Name for student1 is " << student1.getName( );
cout << " and ssn is " << student1.getSSN( ) << endl;
student2.setName("John Doe");
student2.setSSN(123456789);
cout << "Name of student2 is " << student2.getName( );
cout << " and ssn is " << student2.getSSN( ) << endl;
system("pause");
return 0;
}
The output is gibberish. The only thing that prints correctly is the student2 SSN. Any ideas how to fix this?
Name for student1 is ╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠
╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠pi▄î└■. and ssn is -858993460
Name of student2 is ╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠
╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠o╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠
╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠╠pi▄î└■. and ssn is 123456789
Press any key to continue ...