search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

C/C++ 的function 不固定參數 – jashliao部落格

C/C++ 的function 不固定參數


資料來源:http://www07.eyny.com/thread-10257519-1-3D41XTMV.html 

線上執行:https://www.tutorialspoint.com/compile_c_online.php



Code:

#include  
#include // << 使用不定參數比須include 這個 
/* C 的function 不固定參數. 
使用上並不會限制你傳幾個. 
限制只在於你的stack 大小. 
以現在的windows 下的應用程式, 傳了上百個以上也沒問題.  
至於怎麼取得不固定參數的值. 
如下的example */ 
#define PP printf 

int average(int count,...) 
{
	int sum=0; 
	va_list args;
	va_start(args,count);
	// 初始化 不定參數列
	int i; 
	for(i = 0 ; i < count ; ++i)
	{ 
		int arg = va_arg(args,int); // 讀取參數, 每次讀取後就會指到下一個, 至於參數的型別, 必須由程式設計師自己想辦法判段
		sum+=arg;
	}
	return sum/count; 
} 

int main(int argc, char* argv[]) 
{
	PP("Average is : %d\n",average(3,1,2,3)); 
	PP("Average is : %d\n",average(4,1,100,3,4));
	return 0; 
} 



熱門推薦

本文由 jashliaoeuwordpress 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦