Home Segments Index Top Previous Next

626: Sidetrip

The effect of the call to the va_start macro is to place the argument pointer just past the memory chunk occupied by the final ordinary argument:

         *-- The argument count 
         | 
         |       *-- The place pointed to by argument_pointer 
         |       v 
         |       *-- The price 
         |       | 
         |       |               *-- The number of shares 
         |       |               | 
         v       v               v 
         ------- --------------- ------- 
--*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*- 
  | | | | | | | | | | | | | | | | | | | | | | | | | | 
 -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-- 

To do its job, va_start needs to have access to both the argument pointer and the location of the final ordinary argument.