Another Query.


#include<iostream.h>
void main()
{
void ox(char*);
char* str="Hello";
ox(str);
cout<<str;

}

void ox(char* abc)
{
cout<<abc;
abc="meory";

}
This displays HelloHello...that means it is actually a call by value that happens(the function is working on a duplicate copy of argument)..while I am passing a pointer to the function..and it should be modifying the contents of the original argument passed.why is this so ?