|
|
coherent
va_start() Variable Arguments va_start() Point to beginning of argument list #iinncclluuddee <ssttddaarrggss.hh> vvooiidd vvaa_ssttaarrtt(_l_i_s_t_p_t_r, _r_i_g_h_t_p_a_r_m) vvaa_lliisstt _l_i_s_t_p_t_r, _t_y_p_e _r_i_g_h_t_p_a_r_m; vvaa_ssttaarrtt is a macro that points to the beginning of a list of arguments. It can be used with functions that take a variable number of arguments, such as pprriinnttff or ssccaannff, to help implement them portably. It is always used with vvaa_aarrgg and vvaa_eenndd from within a function that takes a variable number of arguments. _l_i_s_t_p_t_r is of type vvaa_lliisstt, which is a type defined in the header ssttddaarrgg.hh. _r_i_g_h_t_p_a_r_m is the rightmost parameter defined in the function's parameter list. Its type is set by the function that is using vvaa_ssttaarrtt. Undefined behavior results if any of the following conditions apply to rriigghhttppaarrmm: if it has storage class rreeggiisstteerr; if it has a function type or an array type; or if its type is not compatible with the type that results from the default argument promotions. ***** Example ***** For an example of this macro, see the entry for vvaarriiaabbllee aarrgguummeennttss. ***** See Also ***** vvaarriiaabbllee aarrgguummeennttss ***** Notes ***** The ANSI Standard demands that vvaa_ssttaarrtt be implemented only as a macro. If the macro definition of vvaa_ssttaarrtt is suppressed within a program, the behavior is undefined. COHERENT Lexicon Page 1
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.