Hi, I'm writing an address into a file and later i need to read it as an address. I've copied this address into a character array and am having a lot of trouble trying to convert it back into a pointer. The pointer initially (when writing to the file) was a void pointer. Please help. here's what i tried: Code: #include<iostream> #include<string> #include<stdio.h> #include<fstream> using namespace std; void * operator new(size_t size) { cout<<"\nOVERLOADED NEW"; void * MemHandle; MemHandle=malloc(size); if(!MemHandle) { bad_alloc ba; throw ba; } ofstream out; out.open("D:/Project/abc.txt",ios::app); out<<"\n"<<(unsigned long int*)MemHandle; out.close(); cout<<"\nmem handle:"<<MemHandle<<endl; return MemHandle; } void main() { fstream in("D:/Project/abc.txt"); int *p=new int; char buf[20]; in.getline(buf,8); buf[8]='\0'; cout<<"buf:"<<(unsigned long int*)buf; }
The output was : OVERLOADED NEW mem handle:003552A0 buf:0012FE9 i needed the buf to hold the initial value. Please help and Thanks in advance.