0
Ich versuche, eine sehr einfache Datei von Daten zu lesen, die wie folgt aussieht:Sementation Fehler mit fscanf()
1597 1 0 3 1
mit dem folgenden Code:
void boot(){
FILE *f = fopen("shutdown.txt", "r");
uint8_t timestamp = 0;
uint8_t power_down_type = 0;
uint8_t power_down_cause = 0;
uint8_t boot_number = 0;
uint8_t antenna_deployed = 0;
uint8_t images_captured = 0;
fscanf(f, "%u %d %d %d %d %d", ×tamp, &power_down_type, &power_down_cause, &boot_number, &antenna_deployed, &images_captured);
printf("timestamp: %u\n", timestamp);
printf("power_down_type: %d\n", power_down_type);
printf("power_down_cause: %d\n", power_down_cause);
printf("boot_number: %d\n", boot_number);
printf("antenna_deployed: %d\n", antenna_deployed);
printf("images_captured: %d\n", images_captured);
}
Aber wenn ich das laufen Code, ich bekomme einen SEGV-Fehler. Kann mir jemand helfen zu verstehen, was ich hier falsch mache? Vielen Dank!
'"% u "' erwarten ein 'unsigned'. 'uint8_t' ist kein' unsigned'. Verwende '"% hhu "'. Weitere Informationen finden Sie in der 'fscanf()' Dokumentation. – chux