怎么利用指针实现两个字符串串变量的交换

如何利用指针实现两个字符串串变量的交换?如何使用引用参数来实现两个字符串变量的交换。例如:char*ap he

如何利用指针实现两个字符串串变量的交换?
如何使用引用参数来实现两个字符串变量的交换。
例如:
char   *ap= "hello ";
char   *bp= "how   are   you ";
交换后使ap和bp指向的内容分别是:
ap:     "how   are   you "
bp:     "hello "

请大家帮帮看看??

[解决办法]
引用参数?你是指这样吗??
#include <iostream>

using namespace std;
void swap(char*& x, char*& y)
{
char *t = x;
x = y;
y = t;
}

int main(int argc, char* argv[])
{
char *ap= "hello ";
char *bp= "how are you ";
swap(ap, bp);
cout < < ap < < endl;
cout < < bp < < endl;
system( "pause ");
return 0;
}