【小白学习C++ 教程】六、C++内置函数和函数传参
@Author:Runsen
文章目錄
- 內(nèi)置函數(shù)
- 函數(shù)
- 傳遞參數(shù)
- 形式參數(shù)(指針傳遞)
函數(shù)是一組一起執(zhí)行一個任務(wù)的語句。每個 C++ 程序都至少有一個函數(shù),即主函數(shù) main() ,所有簡單的程序都可以定義其他額外的函數(shù)。
內(nèi)置函數(shù)
在我們學習如何創(chuàng)建函數(shù)之前,讓我們先了解一些內(nèi)置函數(shù)…
在C ++是一些常見的庫函數(shù)sqrt(),abs(),isdigit()等。
為了使用庫函數(shù),我們通常需要包含定義這些庫函數(shù)的頭文件。
例如,為了使用sqrt()和等數(shù)學函數(shù)abs(),我們需要包含頭文件cmath。
#include <cmath>現(xiàn)在我們獲得了調(diào)用sqrt()任何數(shù)字的平方根的能力。
要調(diào)用基本函數(shù),我們只需要函數(shù)名后跟一對括號,如sqrt(9). 例如:
#include <iostream> #include <cmath>int main(){std::cout << sqrt(9) << "\n"; }使用rand()加上模運算符調(diào)用,生成隨機數(shù)。例如,rand() % 29將輸出 0 到28 之間的隨機數(shù)
函數(shù)
C++ 函數(shù)由兩個不同的部分組成:
- 聲明:這包括函數(shù)的名稱、返回類型是什么以及任何參數(shù)(如果函數(shù)將接受輸入值,稱為參數(shù))。
- 定義:也稱為函數(shù)體,它包含函數(shù)應(yīng)該做什么的指令。
C++ 中的函數(shù)定義的一般形式如下:
return_type function_name( any, parameters, you, have ) {// Code block herereturn output_if_there_is_any;}C++ 中,函數(shù)由一個函數(shù)頭和一個函數(shù)主體組成。下面列出一個函數(shù)的所有組成部分:
-
返回類型: 函數(shù)可以返回一個值。該return_type是值的函數(shù)返回的數(shù)據(jù)類型。某些函數(shù)執(zhí)行所需的操作而不返回值。在這種情況下, return_type 是關(guān)鍵字void。
-
函數(shù)名稱:這是函數(shù)的實際名稱。函數(shù)名和參數(shù)列表共同構(gòu)成了函數(shù)簽名。
-
參數(shù):參數(shù)就像占位符。當一個函數(shù)被調(diào)用時,你將一個值傳遞給參數(shù)。該值稱為實際參數(shù)或?qū)崊ⅰ?shù)列表是指函數(shù)參數(shù)的類型、順序和數(shù)量。參數(shù)可選;也就是說,一個函數(shù)可能不包含任何參數(shù)。
-
函數(shù)體:函數(shù)體包含一組定義函數(shù)功能的語句。
下面是一個函數(shù)聲明的例子。
void greet() {std::cout << "Hello World"; }在上面的程序中,我們聲明了一個名為greet(). 要使用該函數(shù)greet(),我們需要調(diào)用它。
下面是我們?nèi)绾握{(diào)用上述greet()函數(shù)。
int main() {// calling a function greet(); }傳遞參數(shù)
在C++中,函數(shù)聲明的代碼add應(yīng)該在函數(shù)調(diào)用main之前。
C++中函數(shù)參數(shù)的傳遞方式有三種:傳值、傳地址、傳引用。
這里先學習最簡單的傳值。在這種傳遞參數(shù)
中,我們傳遞存儲或復(fù)制到函數(shù)形式參數(shù)中的參數(shù)值。因此,原始值不變,只是函數(shù)內(nèi)部的參數(shù)發(fā)生了變化。
在這種情況下,實際變量x不會改變,因為我們按值傳遞參數(shù),因此傳遞了 x 的副本,該副本已更改,并且該復(fù)制的值在函數(shù)結(jié)束時被銷毀(超出范圍)。所以main() 中的變量x的值仍然是 10。
但是我們可以改變這個程序來修改原來的X,通過使函數(shù)計算時候,返回一個值,并存儲X該值。
int calc(int x);int main() {int x = 10;x = calc(x);printf("%d", x); }int calc(int x) {x = x + 10 ;return x; }20
形式參數(shù)(指針傳遞)
傳遞,形式參數(shù)可以作為引用或指針,在這兩種情況下,它們都會改變原始變量的值。
void calc(int *p);int main() {int x = 10;calc(&x); // 傳遞x的地址作為參數(shù)printf("%d", x); }void calc(int *p) {*p = *p + 10; }最終結(jié)果是20.
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的【小白学习C++ 教程】六、C++内置函数和函数传参的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【小白学习C++ 教程】五、C++数据结
- 下一篇: s3c2440移植MQTT