gcc-C语言Macro替代错误(个人认为应该是Macro的问题)

问题描述

C语言Macro替代错误(个人认为应该是Macro的问题)
Fatal.h
#include
#include
#define Error(Str) FatalError(Str)
#define FatalError(Str) fprintf(stderr%sn"" Str)exit(1)
Test.c
#include
#include ""Fatal.h""

int main(int argc char ** argv)
{
Error(""Test to be wrong"");
return 0;

}

gcc 编译时报:
warning: format ‘%s’ expects a matching ‘char *’ argument [-Wformat=]
Error(""Test to be wrong"");

^

求解答。

解决方案

#define FatalError(Str) fprintf(stderr%sn"" Str)exit(1)
不觉得这里少了一个吗?
#define FatalError(Str) fprintf(stderr%sn"" Str)exit(1)

时间: 2024-08-18 05:08:19

gcc-C语言Macro替代错误(个人认为应该是Macro的问题)的相关文章

在VS中使用Boost库出现Macro redefinition错误如何解决

最近使用Boost库做多线程开发,可视在vs中编译工程师总是遇到Macro redefinition错误,类似下面的错误描述 1>c:\program files (x86)\microsoft visual studio 10.0\vc\include\stdint.h(116): warning C4005: 'INT8_C' : macro redefinition 1>         c:\vc\include\boost\cstdint.hpp(376) : see previou

IIS报在服务器上找不到脚本语言'VBScript.encode'错误怎么办

  这篇文章主要介绍了IIS报在服务器上找不到脚本语言'VBScript.encode'错误解决方法,其实这是一种服务器安全设置,一般虚拟主机都会禁用,需要的朋友可以参考下VBScript.Encode 这个组件经常被用来加密一些ASP的木马后门以达到免杀效果,还有一些程序的作者也会在ASP中使用加密以达到保护版权的目的. 偶然间发现,有套程序传到服务器上,程序报错了: 代码如下:Active Server Pages 错误 'ASP 0129' 在服务器上找不到脚本语言 'VBScript.e

asp.net- VS报错:javascript 语言服务遇到错误且已关闭

问题描述 VS报错:javascript 语言服务遇到错误且已关闭 vs2013安装developer assistant插件后,在aspx页面写js脚本就提示如下错误,大家遇到类似问题吗? 解决方案 遇到过,,,,把那个插件卸载后重新安装后就可以了,,,,,,,,, 解决方案二: 估计是那个插件的问题吧,,

c语言-C语言switch语句 错误 请指教

问题描述 C语言switch语句 错误 请指教 #include ""stdio.h""void main(){ int yearmonthday;//定义年月天数,闰年等于366天,平年等于365天 printf(""请输入月份.年份:""); scanf(""%d%d""&month&year); switch(month) { case 1:day=31;break

源码-关于C语言的一个错误。

问题描述 关于C语言的一个错误. 源码链接在这里.在查找时出现12.exe 中的 0x54f114cf (msvcr100d.dll) 处有未经处理的异常: 0xC0000005: 读取位置 0x0000007c 时发生访问冲突.目前找不到原因,谢谢了.http://codepad.org/UuPofNQA 解决方案 不好意思,刚才看错了拿VC++帮忙调试了下. printf(""%st<%s>t%st%st%d册t%s元"" L->data[i]

231-用VS08来使用C语言发生的错误,请各位高手帮忙

问题描述 用VS08来使用C语言发生的错误,请各位高手帮忙 #include #define N 3 struct stu { int num; char name[20]; int score[4]; } void main( ) { int i,k; struct stu s[N]; for(i=0;i<N;i++) { scanf("%d%s%d%d%d",&(s[i].num),s[i].name,&(s[i].score[0]),&(s[i].s

strcpy-C语言,这个错误是什么意思呀?

问题描述 C语言,这个错误是什么意思呀? #include #include struct data{ char s[30]; int n; float x;};struct data example()//定义结构体类型函数{ struct data emp; strcpy_s(emp.sAn example!""); emp.n = 68; emp.x = 213.52; printf(""%s%d%fn"" emp.s emp.n emp.

关于单片机旋转POV显示C语言程序的错误

问题描述 关于单片机旋转POV显示C语言程序的错误 #include #define uint unsigned int #define uchar unsigned char uchar code buffer[]= //*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*// { 0x10,0x60,0x02,0x8C,0x20,0x18,0x08,0x08,0x88,0x7F,0x88,0x08,0x28,0x18,0x08,0x00, //沈 0x04,0x04,0x7E

编程c语言-C语言编译提示错误,安装

问题描述 C语言编译提示错误,安装 include 编译后提示错误,『no such file』 这是为什么? 解决方案 stdio_ext这个文件不存在.如果是你自己定义的,用引号代替尖括号看看 解决方案二: 用什么IDE呢,应该要将头文件目录设置好.如果是命令行执行编译,就要设置好相应的环境变量. 解决方案三: 你把完整的调试信息贴出来,还有开发环境是什么,这个信息太少了 解决方案四: include 这个头文件找不到了? 解决方案五: 头文件放的位置是在别的地方吧