特牛网址导航

C语言函数之可变参数原理:va_start、va_arg及va_end_va_start,va_arg,va_end-CSDN博客

网友收藏
文章浏览阅读5.9k次,点赞10次,收藏57次。说到C语言函数可变参数,我们最先想到的可能就是printf、scanf、printk了。在Linux-2.6.24.7内核源码里,printk函数原型如下: asmlinkageintprintk(constchar*fmt,...) asmlinkage表示通过堆栈传递参数。gcc编译器在汇编过程中调用c语言函数时传递参数有两种方法:一种是通过堆栈,另一种是通过寄存器。缺省时采用寄存器,假如你要在你的汇编过程中调用c语言函数,并且想通过堆栈传递参数,你定..._va_start,va_arg,va_end