char* 类型函数返回值得获得,该怎么解决

char* 类型函数返回值得获得
我定义了一个函数,函数的返回值为char*型,现在我要得到这个函数的返回值,是用一个char   数组,还是用一个char*的变量在动态分配内存后存储。
    例1
   char*   getchar()
   { 
    return     "xml ";
   }
            main()
            {
                  char*   getxml;
                  strcpy(getxml,getchar());
                  cout < <getxml < <endl;
                  return   0;
            } 
  条件
        1:getchar()返回的字符串长度不定
  2:不能用char*   getxml   =getchar()这样是正确的,但我要用getxml作下一层的返回,所以不能在当前环境下定义!!


------解决方案--------------------
malloc没有学过?
getxml都没内存分配就strcpy,最基本级错误了。
------解决方案--------------------
知道C++为啥要提供string吗,就是为了让你处理这个“不优先知道长度”的字符串。
建议你找本好点的C++书,先学一学string,然后忘掉C时代的char *字符串。