Schreiben eines char** der Länge int*
-
Hallo,
wie schreibe ich am besten einen char** mit der Länge int*. Habe in den FAQ dazu nichts gefunden. Muss ich hier zeile für zeile schreiben?
Danke!
mfg,
shed
-
mach mal nen veranschaulichendes Beispiel wie du das meinst ... kann mir da so nix drunter vorstellen ^^
-
muss ein xml file schreiben, dass ich zuvor geparst habe. Ich bekomme vom Parser folgendes zurück:
char** buffer; int* len;Dieser Buffer und die Länge repräsentieren mein XML-File das ich schreiben muss (myFile.xml). Bin mir aber nicht sicher wie ich das am besten machen. Soll ich zeilenweise schreiben oder gibt es eine write methode die einen char** und int* als parameter akzeptiert.
-
Hallo
Aus einem Array von Zeichenketten allein läßt sich nicht eine sinnvolle XML-Datei erstellen. Es sei denn du sagst uns zusätzliche Angaben zu Bedeutung und gewünschtem Aufbau.
bis bald
akari
-
Ich vermute mal, das es so funktionieren könnte:
fwrite(*buffer,1,*len,stdout);
-
kann mir bitte jemand erklärn, warum jemand überhaupt einen einzelnen integer wert als pointer übergeben sollte?

-
vielleicht kann er aus irgendwelchen gründen kein call by reference machen ud will deshalb den pointer auf den integer
trotzdem wäre ein codeschnipsel nicht schlecht :p
-
Sieht eher danach aus als würdest du einen char* der Länge int "len" zurückbekommen.
void write_smth( std::ostream& out ) { char* buf; int len; xml_parse(&buf, &len); // buf nullterminiert? out << buf; // ansonsten: std::copy(buf, buf+len, std::ostream_iterator<char>(out)); } int main() { std::ofstream out("output.file"); write_smth(out); }Falls dich das nicht weiter bringt, poste einfach mal die Parserdoku.