return 关键字

来源:互联网 发布:2016淘宝店铺怎么装修 编辑:程序博客网 时间:2024/06/17 03:14
return 关键字
return 用来终止一个函数并返回其后面跟着的值。 
return (Val);//此括号可以省略。但一般不省略,尤其在返回一个表达式的值时。 
return 可以返回些什么东西呢?
看下面例子: 
char * Func(void) 

char str[30];
… 
return str; 

str 属于局部变量,位于栈内存中,在Func 结束的时候被释放,所以返回str 将导致错误。 
【规则1-38】return 语句不可返回指向“栈内存”的“指针”,因为该内存在函数体结束时被自动销毁。return语句不可返回指向“栈内存”的指针,因为该内存在函数体结束时就被自动销毁 


留个问题: 
char  *Func(void)

char str[30]; 
...
return ; 

return ; 这个语句有问题吗?如果没有问题,那返回的是什么?
答:有问题,会报错。声明的函数是有返回值的(字符指针),而函数体中返回时没有携带任何值;这是典型的格式错误。
原创粉丝点击