我有一个我想要开始工作的软件。它写于2008年&我已经解决了许多问题,但仍然有很多这方面的问题。我搜索过&搜索,但没有找到任何相关的答案。 这是代码部分: / * APPS * /
aa = 0x80c4b8;
/* Engine Speed */
bb = 0x80e6dc;
/* Manifold Pressure */
cc = 0x80b330;
/* Torque */
dd = 0x80ecbc;
printf("Enter name of log file: ");
fgets(tbuf, 30, stdin);
OF = fopen(tbuf,"w+");
if(OF == NULL) {
printf("Error creating file\n");
return(-1);
}
printf("\n\n");
fprintf(OF,"SCI Memory Read Log file\n");
fprintf(OF,"Acc\tRPM\tMAP\tTQ\n",aa,bb,cc,dd);
有人可以帮忙吗?我甚至不是编码和新手的新手已经修复了14页的警告,直至这种风格警告的页面。我很确定这是C ++,但并不积极。 谢谢, 编
答案 0 :(得分:4)
在这一行中,您传递aa, bb, cc, dd
并且格式字符串"Acc\tRPM\tMAP\tTQ\n"
不期望任何参数
fprintf(OF,"Acc\tRPM\tMAP\tTQ\n",aa,bb,cc,dd);
我认为你想要的是
fprintf(OF,"Acc 0x%x\tRPM 0x%x\tMAP 0x%x\tTQ 0x%x\n",aa,bb,cc,dd);
如果值为unsigned long int
则
fprintf(OF,"Acc 0x%lx\tRPM 0x%lx\tMAP 0x%lx\tTQ 0x%lx\n",aa,bb,cc,dd);
请注意,说明符%x
打印unsigned int
的十六进制表示,%lx
表示unsigned long int
。