我有一个奇怪的问题,打印数据。我使用printf来打印char *字符串,然后再打印另一个字符串。然而,第一个字符串的一部分没有打印出来,当我打印第二个字符串时,第一个字符串的缺失部分被预置在那个字符串之前。这里发生了什么?C stdout printf
我正在写一个简单的libpcap implimentation。以下是一个示例回调函数,它将产生相同的结果。我尝试删除缓冲并在打印后添加了一个putchar('\ n'),但它没有帮助。
void ParseData(u_char* useless, const struct pcap_pkthdr* pkthdr, const u_char* packet){
int packetLen, i;
packetLen = pkthdr->len;
for (i = 0; i < packetLen; i++){
putchar(packet[i]);
}
}
发布代码可能对我们有帮助。 – Jay 2010-04-09 07:16:20
你能请出示一些代码吗?这可能有帮助。 – ereOn 2010-04-09 07:16:23
小心分享示例源代码和输出? – ndim 2010-04-09 07:17:19