【发布时间】:2016-02-18 13:24:22
【问题描述】:
我是 C 的新手。我有这个打印语句,其中打印了特定的值。我需要将此值复制到字符串中。但是当我尝试复制它时,我得到了下面显示的异常。
Unhandled exception at 0x00007FFCF01CB20A (msvcr120d.dll) in RFIDTest.exe: 0xC0000005: Access violation reading location 0x000000000000E200.
下面是打印语句,我需要把它的输出放入一个变量中。
printf("%04X", (((epc[i] & 0xFF00) >> 8) | ((epc[i] & 0xFF) << 8)));
下面显示的是我如何尝试将它放入变量并附加它。
strcat(("%04X", (((epc[i] & 0xFF00) >> 8) | ((epc[i] & 0xFF) << 8))),strData);
我的完整方法如下。
char* ipj_util_print_epc(uint16_t* epc, int len, bool little_endian)
{
char * strData="";
int i;
for (i = 0; i < len; i++)
{
/* Print hyphen every two bytes */
if (i % 1 == 0 && i > 0)
{
printf("-");
strcat("-",strData);
}
/* Print one byte at a time */
if (little_endian)
{
printf("%04X", (((epc[i] & 0xFF00) >> 8) | ((epc[i] & 0xFF) << 8)));
strcat(("%04X", (((epc[i] & 0xFF00) >> 8) | ((epc[i] & 0xFF) << 8))),strData);
}
else
{
strcat(("%04X", epc[i]),strData);
printf("%04X", epc[i]);
}
}
printf("\n");
return strData;
}
如果我做错了,我怎样才能将这些值打印到变量中?
【问题讨论】:
-
一些 int % 1 怎么可能是 != 0 ?
-
是的,感谢您发现它。请帮我解决这个例外:(
标签: c string exception char append