QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 774|回复: 5

今天看到一段代码,不知这样的代码为什么也能通过编译

[复制链接]
发表于 2005-7-24 20:53:31 | 显示全部楼层 |阅读模式
[code:1]
static void xprintf (const char *format, ...) {

#ifdef LOG
  static FILE *log_fd=NULL;

  va_list argp;

  if (!log_fd) {
[/code:1]

第一行里的"..."有什么说法吗?
发表于 2005-7-24 21:28:47 | 显示全部楼层
不定参数
回复

使用道具 举报

 楼主| 发表于 2005-7-24 21:31:10 | 显示全部楼层
哦,明白了

谢谢mozilla
回复

使用道具 举报

发表于 2005-7-25 21:29:59 | 显示全部楼层
不定参数怎么用,
...是省略号吗?省略号好像是中文字符啊?!
mozilla, 请详解
回复

使用道具 举报

发表于 2005-7-25 22:03:31 | 显示全部楼层
[code:1]
#include <stdio.h>
#include <stdarg.h>
void test ( char *str,...)
{
        int i;
        va_list ap;
        va_start(ap,str);
        printf("%s\n",str);
        while((i=va_arg(ap,int)))
                printf("%d\n",i);
        va_end(ap);
}
main()
{
        test("hello",1,2,3,4,5,6,NULL);
        test("hi",11,22,33,44,NULL);
}
[/code:1]
回复

使用道具 举报

 楼主| 发表于 2005-7-26 07:26:19 | 显示全部楼层
不定参数用栈管理的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-5 15:47 , Processed in 0.075452 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表