记录:VC和GCC中变参的使用区别

记录:VC和GCC中变参的使用区别


int  bs_SampleMakeResultBuffer( struct  bs_schemaresultbuf_tag *  result,  const   char *  fmt, )
{
    va_list args;
    va_start(args, fmt);
    result
->size = vsprintf(result->buf, fmt, args);
    va_end(args);

    
return 0;
}


#if  !defined(__WIN_DEBUG__)
#define  BS_SAMPLE_MAKERESULTBUFFER(result, fmt, arg) \
{ \
    bs_SampleMakeResultBuffer(result, fmt, ##arg); \
}

#else
#define  BS_SAMPLE_MAKERESULTBUFFER(result, fmt, ) \
{ \
    bs_SampleMakeResultBuffer(result, fmt, __VA_ARGS__); \
}

#endif

    工作中,一直用UNIX下的GCC编译,为了调试方便,我还是习惯先在Windows下的VC调试好后再移植到UNIX上,因此两个平台和编译器间的微小差异往往会搞死我,每次搞定了,如果不记录下,回头又忘记了,唉,都怀疑自己已经开始老年痴呆了~~ 

    前天终于将YAO的程序写好了,修修改改,从2009年到2010年了,加上工作上的代码量也多了点,回到家,手指头严重拒绝敲打脑袋里面的代码,因此进来无输出。。。

你可能感兴趣的:(记录:VC和GCC中变参的使用区别)