没办法上传图片 只能发内容了 
getname()申请数组长度200 在main()函数输出乱码 但是在申请长度2000 可以正常输出"hello world"
char * getname();int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{

int nRetCode = 0;
char *name=getname();
cout<<name<<endl; // 初始化 MFC 并在失败时显示错误

system("pause");
return nRetCode;
}
char * getname()
{
char ch[200]={0};
strcpy_s(ch,"hello world");
return ch;
}

解决方案 »

  1.   


    char * getname()
    {
    char ch[200]={0};
    strcpy_s(ch,"hello world");
    return ch;
    }基础知识,不要返回一个局部变量指针.
      

  2.   

    在主函数定义 char ch[200]={0};int getname(char *ch)
    {strcpy_s(ch,"hello world");
    return 1;;
    }
      

  3.   

    我只能说楼主你运气真好,函数getname中的空间随着函数结束生命周期也结束了,改成2000还能找到只能说是运气好。但是正常写代码不能这样写的
      

  4.   

    把char ch[100]={0};该成全局变量之后就能正常的输出了,这个能说明很多的事情