C和指针之函数之可变参数
生活随笔
收集整理的這篇文章主要介紹了
C和指针之函数之可变参数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、可變參數如何實現
可變參數列表是通過宏來實現的,這些宏定義在stdarg.h頭文件中,這個頭文件聲明了一個類型va_list和三個宏,va_start、va_arg、va_end,一般我們聲明一個類型為va_list的變量,和這個幾個宏配合使用,訪問參數的值。
2、實現一個函數多個參數求均值
比如我們需要實現制定數量的值得平均值(求參數值的平均值)
思路:
1、初始化一個va_list變量
2、用va_start來實現初始化,第一個參數是va_list變量,第二個參數是可變參數的第一個參數
3、用va_arg宏來訪問參數,va_arg來接受兩個參數:va_list變量和參數列表的下一個參數類型
4、用完可變參數之后,我們需要調用va_end
代碼實現:
#include <stdio.h>
#include <stdarg.h>float average(int n_values, ...)
{va_list var_arg;int i;float sum = 0;//準備訪問可變參數va_start(var_arg, n_values);//添加取自可變參數列表的值for (i = 0; i < n_values; i++){sum += va_arg(var_arg, int);}
總結
以上是生活随笔為你收集整理的C和指针之函数之可变参数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C和指针之函数之实现阶乘和斐波那契数(递
- 下一篇: C和指针之函数之递归实现厄密多项式