ex5_10.cpp

来自「Visual C++ 2005的源代码」· C++ 代码 · 共 29 行

CPP
29
字号
// Ex5_10.cpp
// Handling a variable number of arguments
#include <iostream>
#include "stdarg.h"
using std::cout;
using std::endl;

int sum(int count, ...)
{
  if(count <= 0)
    return 0;

  va_list arg_ptr;                     // Declare argument list pointer
  va_start(arg_ptr, count);            // Set arg_ptr to 1st optional argument

  int sum =0;
  for(int i = 0 ; i<count ; i++)
    sum += va_arg(arg_ptr, int);       // Add int value from arg_ptr and increment
 
  va_end(arg_ptr);                     // Reset the pointer to null
  return sum;
}

int main(int argc, char* argv[])
{
  cout << sum(2, 4, 6, 8, 10, 12) << endl;
  cout << sum(11, 22, 33, 44, 55, 66, 77, 66, 99) << endl;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?