分类: C/C++
2010-09-14 17:27:44
|
与switch-case方式对比,这种方式代码简洁,可读性强。
有一点要注意:
在被调用的函数中定义的局部变量是在堆栈上分配的,函数退出后,变量所在的内存已经释放,所以不能返回局部变量的指针。如:
int * function()
{
int a[10];
...
return a; //错误!
}
c语言,使用数组做返回值的方法:
方法1,用静态变量进行返回
char *SubFunction(void)
{
static char szText[5] = "adfa"; // 用静态空间
//对p进行赋值操作
return szText;
}
// 方法2,用指针传递
void SubFunction(char *pText1, char *pText2)
{
// 对pText1, pText2运算
strcpy(pText1, "love");
strcpy(pText2, "you");
return;
}
方法3:使用返回指针方法
|
注意:1.free(b),2.a的赋值方式
chinaunix网友2010-09-15 14:37:00
很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com