- 注册时间
- 2005-2-11
- 最后登录
- 1970-1-1
|

楼主 |
发表于 2008-4-15 21:40:57
|
显示全部楼层
再次更新!
这次支持了不定参数的函数了,很容易写scanf,sscanf等函数了。
举个例子:- #include <GetArg.y>
- void fun1(char n)//不定参数的函数fun1有且只有一个参数n(值为参数个数)
- {
- char i;
- long arg[9];
- #attr(fun1, -1, -1, -1, 7, -1, -1, -1, -1, 0);//修改函数fun1为不定参数函数,其中的7表示该函数(fun1)为void型,如果为8表示long型,#attr用法请看帮助->语法->命令
- GetArg(arg, n);//从数据栈中取出n个参数
- printf("fun1: %d个参数\n", n);
- for (i = 0; i < n; i++)
- {
- printf("%d ", arg[i]);
- }
- printf("\n");
- getchar();
- }
- long fun2(char n)
- {
- char i;
- long arg[9];
- #attr(fun2, -1, -1, -1, 8, -1, -1, -1, -1, 0);//修改函数fun2为不定参数函数,其中的8表示该函数(fun2)为long型
- GetArg(arg, n);//从数据栈中取出n个参数
- printf("fun2: %d参数\n", n);
- for (i = 0; i < n; i++)
- {
- printf("%d ", arg[i]);
- }
- printf("\n");
- getchar();
- }
- void main()
- {
- SetScreen(1);
- fun1(10);//一个参数
- fun1(30, 20, 14);//三个参数
- fun1();//没有参数
- fun2(18, 90);
- fun2(156, 987, 2120, 103);
- fun2();
- }
复制代码
[ 本帖最后由 yan 于 2008-4-16 13:54 编辑 ] |
|