当前位置:  技术问答>linux和unix

关于GCC警告的问题

    来源: 互联网  发布时间:2016-10-18

    本文导语:  [gsm@fedora ~]$ cat -n b.c      1 #include       2 #include       3      4 #define _(str) (str)      5 #define report_error(format, ...)       6     do      7     {      8         fprintf(stderr, _("文件:%s 函...

[gsm@fedora ~]$ cat -n b.c
     1 #include 
     2 #include 
     3
     4 #define _(str) (str)
     5 #define report_error(format, ...) 
     6     do
     7     {
     8         fprintf(stderr, _("文件:%s 函數:%s 行號:%d 錯誤:"),
     9                             __FILE__, __func__, __LINE__); 
    10         fprintf(stderr, format, ##__VA_ARGS__); 
    11         fprintf(stderr, "n");
    12     }while(0)
    13
    14 int main(void)
    15 {
    16     report_error("test");
    17     return 0;
    18 }
[gsm@fedora ~]$ gcc -std=c99 -pedantic-errors -Wall b.c
b.c: In function 「main」:
b.c:16:24: 錯誤:ISO C99 需要使用剩餘的引數

如何修改代码(别告诉我修改编译参数。。。)以消除警告?

|
定义成(format,...),意味着至少两个参数,而你只给了1个,所以报错了

|
因为是宏定义,函数定义就可以你那样写也能支持1个参数

|
  5 #define report_error(...) 
  10 fprintf(stderr, ##__VA_ARGS__); 
用楼主的编译命令行,通过。gcc 4.3.2
 report_error("test");
 report_error("test %d %s", 1, "abc");
都可以输出

|
该回复于2010-12-03 11:00:52被版主删除

    
 
 

您可能感兴趣的文章:

  • gcc编译CORBA程序如何关闭智能指针转换为普通指针的警告
  • 关于gcc的编译信息中的警告的问题
  • 如何将gcc编译的警告及错误信息保存到文件
  • 安装gcc4.1.0的时候make时候产生的一个警告,大家帮我看看是怎么回事?
  • 如何消除gcc编译警告 warning: "unused parameter xxxx"
  • warning:no newline at end of file 在gcc编译中如果.c或者.h文件没有以新行结尾,则会有这样的警告呢,没有以新行结尾会有这么问题吗
  • aix6.1 gcc编译时的一个警告
  • GCC无法安装的问题,希望有人帮我( Debian 4.04ra无法安装GCC)
  • gcc与arm-linux-gcc编译的问题???
  • 疑惑softfloat的问题,并求arm-linux-gcc和arm-linux-softfloat-gcc4.1.1
  • 安装Oracel,关于ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-gcc gcc的问题
  • 卸载和安装GCC问题
  • gcc安装的问题
  • cc与gcc的问题
  • 关于gcc的问题!
  • gcc 问题
  • 内核版本问题 GCC版本问题
  • solaris下gcc问题
  • GCC 与 Samba 问题 ?
  • gcc-g++版本问题
  • gcc问题,求助
  • 请大虾支招啊-gcc 编译选项问题 以及 makefile的问题
  • 初学gcc使用的问题
  • ****求助,关于REDHAT LINUX 9下的GCC编译器问题.............
  • Ubuntu8.04安装GCC问题
  • gcc安装遇到的问题
  • 请问大虾有关在windows上移植GCC的问题。
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Linux下GCC内置原子操作函数(多线程资源访问)介绍
  • 使用popen来执行gcc命令,如何根据读出来的gcc的输出来判断gcc是否编译成功?
  • 命令:mips_fp_le-gcc,mipsel-gcc 是什么意思?跟一般的gcc有什么区别?
  • 怎样升级我的GCC呀,我用的RH7.2,GCC 2.96 ,我从网上下载了一个gcc-3.2.3.tar.gz
  • arm-elf-gcc 和 arm-linux-gcc有什么区别?arm-elf-gcc里的elf代表什么?
  • gcc-ccore、avr-gcc及arm-gcc的区别
  • gcc在哪里?bash:gcc:command not found
  • 如何删掉GCC3.0(我需要GCC2.0-----)
  • Windows版GCC TDM-GCC
  • 急问:如何卸掉gcc 3.2庄gcc 2.96
  • 有人遇到过吗,在安装GCC时提示,"checking gcc ...no "
  • gcc编译时出错,gcc: installation problem, cannot exec `as': 没有那个文件或目录!!!求助呀呀!!!!!
  • Solaris8,安装了iconv,gcc和gcclib,然后用gcc编译c程序出错。
  • 一套未安装gcc的Linux中安装gcc rpm包时时出现错误
  • 下了一个GCC3.0包用tar xjfv gcc-3.0.tar.bz2解压后出现一堆文
  • 请问如何安装rpm格式的gcc如gcc-3.2.2-5.src.rpm,谢谢
  • arm-linux-gcc交叉编译出错,但gcc编译没错,什么原因呢???
  • 在redhat9下,如何将gcc3.x改为gcc2.x?
  • linux x86_64下由于拷贝gcc的lib目录导致gcc编译器出错
  • 我在Solaris8上安装了gcc3.3Solaris8,但是总是出错!错误如下:gcc: syntax error at line 1: `(' unexpected
  • 求助:当用 gcc 编译时没,加上优化选项 -02 ,可是提示是 gcc: unrecognized option `-02'


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3