return 关键字
生活随笔
收集整理的這篇文章主要介紹了
return 关键字
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
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 ; 這個語句有問題嗎?如果沒有問題,那返回的是什么?
答:有問題,會報錯。聲明的函數是有返回值的(字符指針),而函數體中返回時沒有攜帶任何值;這是典型的格式錯誤。
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 ; 這個語句有問題嗎?如果沒有問題,那返回的是什么?
答:有問題,會報錯。聲明的函數是有返回值的(字符指針),而函數體中返回時沒有攜帶任何值;這是典型的格式錯誤。
總結
以上是生活随笔為你收集整理的return 关键字的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在switch case 语句中能否使用
- 下一篇: 深入理解const