关于返回指针。。。。。(在线等待。。。
char *GetString(void)
{
char p[] = "hello world";
return p; // 编译器将提出警告
}
void Test4(void)
{
char *str = NULL;
str = GetString(); // str 的内容是垃圾
cout<< str << endl;
}
1。怎么才能正确返回?在函数中用new或malloc可以吗?
还有其他什么好方法吗? 先谢谢了
2。还想问一个问题,就是:是不是只有用malloc或new申请的内存是动态内存?
函数内的定义的变量(不用malloc或new)在栈上创建,跳出函数就自动释放的?