Ich versuche, einen Fehler zu erkennen, so dass ich in meinem Programm einige Spuren aufgenommen. Das Problem ist, dass nach, dass es nicht kompilieren, mich nächste Fehler geben:Kompilierungsfehler: Fprintf wirft Parse Fehler
../src/DR700_API.c:46: parse error before `*'
habe ich nur noch eine fprintf am Anfang jeder Funktion:
fprintf(stdout,"_name_of_function_");
kommentierte alle fprintf es kompiliert richtig, also ist da der fehler. Ich kann nicht auf sie verzichten, da ich andere Fehler in der Ausführungszeit verfolgen möchte.
Hier ist ein kleines Beispiel:
#include <stdio.h>
#include <stdlib.h>
ImprFunc *DR700_new()
{
fprintf(stdout,"DR700_new");
ImprFunc *impr = (ImprFunc *)malloc(sizeof(DR700_ImprFunc));
if (impr == NULL)
return NULL;
...
../src/DR700_API.c:46: parse error before `*'
../src/DR700_API.c:47: `impr' undeclared (first use in this function)
../src/DR700_API.c:47: (Each undeclared identifier is reported only once
../src/DR700_API.c:47: for each function it appears in.)
make: *** [../obj/DR700_API.o] Error 1
oder fügen Sie -std = c99 in die Build-Flags ein. Aber für neue gcc ist es nicht wirklich, da es standardmäßig -std = c11 verwendet – alexanius
Ich habe es auf die erste Art und Weise und es hat gut funktioniert. Vielen Dank! – Joster