Your code is a horrible mix of C and C++ style, as Mike's comment says, pick a language and use it properly.
#include <iostream>
#include <string>
using namespace std;
struct person {
string name;
string city;
int age;
};
int main()
{
person user;
cout << "Please fill in the user info.." << endl << "Name: ";
cin >> user.name;
cout << "Age: ";
cin >> user.age;
cout << "City";
cin >> user.city;
cout << "The user info is:
" << "Name: " << user.name << "
Age: " << user.age << "
City: " << user.city << endl;
system("pause");
}
Don't dynamically allocate when you don't need to (then there's no risk of mallocing the wrong amount of memory, and no risk of not mallocing memory for the strings, which are both mistakes you made in your original program).
main
must return int
not void
typedef struct {...} x;
is not necessary in C++, just say struct x {...};
Don't overuse endl
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…