Ich möchte zwei Funktionen, fdump und sdump definieren, um eine Struktur in eine Datei oder einen Puffer mit fprintf und sprintf in jedem Fall auszugeben.Drucken in einen Puffer oder Datei, die Code wiederverwenden
Gibt es eine Möglichkeit, sie zu definieren, ohne den Code in den beiden Funktionen zu wiederholen? könnte eine Lösung sein SDUMP definieren und dann auf sie FdUMP basiert, E.Ich .:
void fdump(FILE* f, struct mystruct* param) {
char buffer[MAX];
sdump(buffer, MAX, param);
fprint(f, "%s", buffer);
}
Aber diese Lösung Abfälle und Zwischenpuffer. Obwohl vielleicht fprintf das gleiche tut. Eine andere Lösung könnte mit Hilfe von Vorverarbeitungs-Makros erfolgen, aber es sieht ziemlich kompliziert aus. Bitte, irgendwelche Ideen?
Vielen Dank im Voraus
können Sie posten den sdump Code? – perreal
Es ist noch nicht geschrieben. Es wird jedoch nur der Name der Felder der Struktur und ihrer Werte in einen Puffer gedruckt. – ldonoso