I copied this example from the book and no matter what i input the output memory address is always: 18495548
Enter last name: Fredeldumpkin
Fredeldumpkin at 18495548
Enter last name: Pook
Pook at 18495548
Instead of:
Enter last name: Fredeldumpkin
Fredeldumpkin at 0x004326b8
Enter last name: Pook
Pook at 0x004301c8
Code:#include <clx.h> #include <iostream> #include <cstring> #pragma hdrstop //--------------------------------------------------------------------------- #pragma argsused using namespace std; char * getname(void); int main(int argc, char* argv[]) { char * name; name = getname(); cout << name << " at " << (int *) name << "\n"; delete [] name; name = getname(); cout << name << " at " << (int *) name << "\n"; delete [] name; cin.get(); cin.get(); return 0; } char * getname() { char temp[80]; cout << "Enter last name: "; cin >> temp; char * pn = new char[strlen(temp) + 1]; strcpy(pn, temp); return pn; }



LinkBack URL
About LinkBacks


