- 函式的定義和宣告
- 函式的宣告和定義都必須描述相同的型別,但是宣告可以不寫引數名,定義則必須寫引數名,但是他們的引數名字可以不同。
- 一個區域性變數被宣告為static,那麼這個區域性變數將只會被初始化一次,而其他的區域性變數則隨情況而定進行初始化
-
1 #include<iostream> 2 using namespace std; 3 int f(int ); 4 int f(int a){ 5 while(a--){ 6 static int n=0;//這個靜態區域性變數只能被修改一次 7 int x=0;//這個區域性變數一直是在被修改 8 9 cout<<"n=="<<n++<<",x=="<<x++<<endl; 10 } 11 } 12 int main(){ 13 f(2); 14 f(3); 15 }
- 函式引數
- 陣列引數:不會也不能按值傳遞,T[]型別的陣列傳遞時會被轉換成T*。
- 多維陣列作為引數:可以利用指標的陣列代替。(實際就是指向陣列的指標)
- 預設引數不確定數目的引數 1.如果函式中出現不確定數目的引數,就用。。。表示
- 預設引數的型別將在函式宣告時檢查,預設引數一般是被放在最後的,它的後面如果出現非預設的引數,就會報錯
- `int a(int a,int b=0,int c);//這個是錯誤的`。
- 不確定的引數就用。。。表示
- 指向函式的指標
- 用函式指標變數呼叫函式:可以用一個指標變數指向函式,然後呼叫這個指標變數去呼叫此函式
-
#include <stdio.h> #include <stdlib.h> int main() { int max(int,int); int (*p)(int,int);//定義P為一個指向函式的指標變數,如果*p沒有括號就不是指標變數了 int a,b,c; p = max;//p指向max函式的開頭 scanf("%d,%d",&a,&b); c = (*p)(a,b); printf("a=%d,b=%d,max=%d\n",a,b,c); return 0; } int max(int x,int y) { int z; if(x>y) z = x; else z = y; return(z); }
-
- (1) 指向函式的指標變數的一般定義形式為:
資料型別 (*指標變數名)(函式引數列表)
這裡資料型別就是函式返回值的型別
- 用函式指標變數呼叫函式:可以用一個指標變數指向函式,然後呼叫這個指標變數去呼叫此函式
- 總結
C++筆記--函式
相關文章
- C++學習筆記(二)——函式C++筆記函式
- c++學習筆記 -- 建構函式C++筆記函式
- C++筆記— 排序函式sort() 和vector容器C++筆記排序函式
- 【C++筆記】虛擬函式(從虛擬函式表來解析)C++筆記函式
- 【C++筆記】虛擬函式(從虛擬函式概念來解析)C++筆記函式
- Effective c++(筆記)----類與函式之實現C++筆記函式
- C++學習筆記-----類和建構函式C++筆記函式
- 《C++ Primer》學習筆記(六):C++模組設計——函式C++筆記函式
- C++學習筆記-C++對C語言的函式擴充C++筆記C語言函式
- 【C++進階筆記】(1)函式模板的宣告及使用C++筆記函式
- python筆記-函式Python筆記函式
- 筆記:Python函式筆記Python函式
- 【筆記】普通生成函式筆記函式
- C++入門記-建構函式和解構函式C++函式
- async函式學習筆記。函式筆記
- substr擷取函式 筆記函式筆記
- Go 函式 學習筆記Go函式筆記
- 函式-PHP手冊筆記函式PHP筆記
- mysql常用函式--個人筆記MySql函式筆記
- 【筆記】oracle 統計函式筆記Oracle函式
- 分析函式(學習筆記)函式筆記
- 生成函式 學習筆記函式筆記
- PHP筆記:建構函式與解構函式PHP筆記函式
- C++函式C++函式
- 【C++】函式C++函式
- MySQL 8.0 視窗函式-筆記MySql函式筆記
- TS學習筆記(四):函式筆記函式
- JavaScript學習筆記 - 原生函式JavaScript筆記函式
- Golang學習筆記-1.6 函式Golang筆記函式
- Oracle學習筆記(6)——函式Oracle筆記函式
- LoadRunner函式學習筆記函式筆記
- MYSQL學習筆記14: 函式MySql筆記函式
- C++學習隨筆——C++仿函式的應用方法C++函式
- Effective c++(筆記) 中關於建構函式、解構函式以及賦值操作符的知識C++筆記函式賦值
- python學習筆記(六)——函式Python筆記函式
- OpenCV學習筆記(4)——mixChannels函式OpenCV筆記函式
- OpenCV學習筆記(5)——normalize函式OpenCV筆記ORM函式
- Flutter學習筆記(4)--Dart函式Flutter筆記Dart函式