C C 函式原型 (無參,可變長引數)

2021-09-25 05:08:06 字數 1291 閱讀 5505

參考手冊

01 無參函式

c 的實現

//定義形式 與 呼叫形式

#include

//定義

void

fool

(void

)int main

(void

)

c++ 實現

#include 

using namespace std;

//定義方式1

void

fool()

//定義方式 2

void

bar(

void

)int main()

02 不定引數

c的缺陷: function(), 表示含有不確定個數的引數. 如下的呼叫時沒有問題的。(c++語法表示無參)

#include 

void

fool()

int main

(void

)

03 可變長引數

c 實現例1:整數求和

#include 

#include

int sum_int

(int num,

...)

va_end

(ap)

;return sum;

}int main

(void

)

c 實現例2:

printf函式實現: 支援%d, %s, %c ,%%%(定義字元%%)

#include 

#include

void

print_int

(int i)

putchar

(i +

'0');}

}void

print_string

(char const

* string)}}

int print_default

(char const

*format)

}return cnt;

}int my_printf

(char const

* format,

...)

format++;}

else

}va_end

(ap);}

int main

(void

);

可變長函式引數

1.1 什麼是可變長引數 可變長引數 顧名思義,就是函式的引數長度 數量 是可變的。比如 c 語言的 printf 系列的 格式化輸入輸出等 函式,都是引數可變的。下面是 printf 函式的宣告 int printf const char format,可變引數函式宣告方式都是類似的。1.2 如何...

可變長函式引數模板

include 通用可變引數模板 處理不限定個數的引數,處理不同型別 void showall 空函式,介面,最後結束遞迴 新版本編譯 強制預留介面 template 可變長度!void showall const t value,const args args 設計可以修改原來的資料的 t val...

C 系列 函式可變長引數

一 基礎部分 1.1 什麼是可變長引數 可變長引數 顧名思義,就是函式的引數長度 數量 是可變的。比如 c 語言的 printf 系列的 格式化輸入輸出等 函式,都是引數可變的。下面是 printf 函式的宣告 int printf const char format,可變引數函式宣告方式都是類似的...