c++技巧之可变参数函数
2013-01-16 10:16
429 查看
#include <stdio.h> #include <string.h> #include <stdarg.h> #include <iostream.h> #include <stdlib.h> //括号匹配快捷键 ctrl+] //定位预处理 #if #endif ctrl+K //可变参数函数示例 int demo(char *msg,...); //测试inlne int add(int a,int b); int main(){ demo("demo","this","is","a","demo","program!","\0"); int result=add(2,11); printf("\n %d\n",result); cout<<add(6,6)<<endl; //演示获取系统环境变量 char *descr=getenv("path");//int putenv(const char*var); if(descr) { printf("%s",descr); }else{ printf("the env is not defined!;"); } putenv("flag=c:\\test\\flag"); if(getenv("flag")) { printf("\nget env success!\n"); }else{ printf("\n get env failed;!\n"); } return 0; } int demo(char *msg,...) { va_list argp;//保存参数的结构 int argno=0;//参数个数 char buffer[256]; va_start(argp,msg);//指向第一个可选参数 while(1) { strcpy(buffer,va_arg(argp,char*)); if(strcmp(buffer,"\0")==0) break; printf("参数 %d 是:%s\n",argno,buffer); argno++; } va_end(argp);//将argp置为NULL return 0; } inline int add(int a,int b) { return a+b; }
相关文章推荐
- C++ 官网的例子,可变参数的函数
- C语言深入浅出可变参数函数的使用技巧
- C++函数可变参数实现原理探究——以实现printf为例
- C/C++ 可变参数函数
- c/c++支持可变参数的函数
- C++ 可变参数函数
- C++可变参数函数( 如:void Func(int a, int b, ...) )用法
- C/C++ 可变参数函数的原理和应用
- C++学习之可变参数的函数与模板
- C/C++中可变参数函数的实现
- [zz]c++可变参数函数使用
- c/c++支持可变参数的函数
- C++:可变参数函数
- 关于C++编写可变参数的函数
- C语言中的可变参数-printf的实现原理 在C/C++中,对函数参数的扫描是从后向前的。C/C++的函数参数是通过压入堆栈的方式来给函数传参数的(堆栈是一种先进后出的数据结构),最先压入的参数最后出
- C/C++ 日常学习总结(第十八篇)参数个数可变的函数
- C++学习之可变参数的函数与模板
- [C/C++]函数参数的入栈顺序与可变参数的实现
- C/C++可变参数函数
- [C/C++]函数参数的入栈顺序与可变参数的实现