|
本人想定义一个函数返回一个字符串
如:char *function(...)
{
char buf[1024];
...
return buf;
}
main()
{
char *p;
p = function;
return;
}
这样执行function函数后buf会被释放,肯定会丢失
数据
请问怎样定义function才能较好的保存所需的数值。
我知道的方法有在main中strcpy(buf2,function());
还有在function中定义buf为static。还有就是在function中传递一个buf参数。
而我想要的是不在function中定义static buf;并且不传递buf参数,同时还返回所需的字符串,有什么更好的方法吗?这几种方法那个好。 |
|