playerChoice and compChoice are function prototypes. When you pass them into functions as arguments, they become function pointers. You can't turn a function pointer into a string. Yet, it's even worse than that. As far as I can tell, none of the functions are actually sharing any information.
You have the player decide what to play one way:
Then the computer decides another way:
char playerChoice; // not a string
cout<<"Enter your choice: ";
case 'r': case 'R':
case 'p': case 'P':
case 's': case 'S':
cout<<"Play option does not exist!"<<endl;
And what each person plays never comes out of these functions. If you did the simplest thing and simply returned the choices, those choices aren't even the same type in the end.
compChoice = rand()%3;
if(compChoice == 1)
else if(compChoice == 2)
else if(compChoice == 3)