new char和new char[]
#include<iostream>
#include "stdio.h"
using namespace std;
char * reverse(char* src)
{
char *start=src;
char *dest=new char; //我理解的这里是这个指针只能存放一个字符吗?但是程序运行结果不是这样,即使多个
char *result=dest; 字符也可以,另外改成new char[100]也可以。 while(*src++);
char *begin=src-2,*end=src-2;
while (begin-->start)
{
if(' '==*begin||begin==start)
{ char *pt=begin-1;
if (begin!=start)
begin+=1;
while(begin<=end)
{
*dest++=*begin++; //get the last word
}
begin=pt;
end=pt;
*dest++=' ';
}
}
*dest='\0';
return result;
}
int main()
{
char *s="idf am a student";
cout<<s<<endl;
cout<<reverse(s)<<endl;
return 0;
}