/*
*在声明函数时给形参赋默认值,如果在调用该函数时未给出实参,则采用自动使用默认值。
*1. “带有默认值的形参必须从参数表的最右侧开始连续的不间断的列出”。
*2. “如果分别给出了函数声明和函数定义,形参默认值只能出现在函数声明中”。 
*/
#include <iostream>
using namespace std;
#define MACRO 0
int max(int ia, int ib = 9);
int main(int argc, char **argv)
{
   int i = 0, j = 0;

#if defined (MACRO)
   i = 8;
#else
   i = 10;
#endif

   cout << max(i) << endl;
   system("pause");
   return 0;
}
int max(int ia, int ib)
{
   return (ia > ib ? ia : ib);
}