2011-03-03 wcdj
问题来自这个帖子 。
问题大意为:
使用C语言定义一个通用的函数。根据不同的参数个数分别求三角形面积,矩形面积,梯形面积,圆形面积的函数。
float triangle(float,float);// 三角形
float circle(float r);// 圆形
float trapezium(float,float,float);// 梯形
分析:
C语言不能使用默认参数吗?—— 默认参数是C++的特性,C中不支持 。
但是可以使用可变参数模拟默认参数 。类似 int printf ( const char * format, ... );
一种实现:
更多参考:
va_list、 va_start、va_arg、va_end的原理与使用