У меня странная проблема с выводом данных. Я использую printf для печати строки char*, а затем после этого печатаю еще одну. Однако часть первой строки не печатается, и когда я печатаю вторую строку, к ней добавляется отсутствующая часть первой. Что здесь происходит?
Я пишу простую реализацию libpcap. Вот пример функции обратного вызова, которая даст те же результаты. Я попытался удалить буферизацию и добавить 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]);
}
}