void str_reverse(char* p1,char* p2)
{
if(p1==p2)return;
*p1 = (*p1)+(*p2);
*p2 = (*p1)-(*p2);
*p1 = (*p1)-(*p2);
if(p1==p2-1)return;
else str_reverse(++p1,--p2);
}
test:
char* ptest="abcdefg";
str_reverse(ptest,ptest+strlen(ptest)=1);
交换两个参数值的宏定义 为:. #define SWAP (a,b) (a)=(a)+(b);(b)=(a)-(b);(a)=(a)-(b);