1.4k Aufrufe
Gefragt in Anwendungen(Java,C++...) von
Hallo,

Wie kann ich diese cout Instruktionen am besten in fprintf ausdrücken:

SYSTEMTIME x;
GetLocalTime(&x);
//cout << "//Logging started: ";
//cout << x.wDay << " " << x.wMonth << " " <<x.wYear << ", ";
//cout << x.wHour << " " << x.wMinute << " " << x.wSecond << endl;


Ich würde das ganze gerne in eine Datei ausgeben:

fprintf(dateiout,"test")


nur
1 ) akzeptiert fprintf nur einen string pro Aufruf
2 ) akzeptiert er kei x.wMinute...

alternativ könnte ich vllt cout dazu bringen in eine Datei zu schreiben, aber wie?

Hoffe ihr könnt helfen...:)

3 Antworten

0 Punkte
Beantwortet von Experte (3.2k Punkte)

#include <stdio.h>

FILE* outfile = fopen("myfile.log","w");
SYSTEMTIME x;
GetLocaltime(&x);

fprintf(outfile,"%u.%u.%u %u:%u.%u", x.wDay, x.wMonth, x.wYear, x.wHour, x.wMinute, x.wSecond);
fclose(outfile);


fprintf Referenz.

alternativ hätte ich noch "cout-style" Streams im angebot: Hier

Ele (ebenfalls aus dem Norden ;)
0 Punkte
Beantwortet von
Superb, jetzt verstehe ich das.. :)

(ebenfalls aus dem Norden ;)

Wie schön! :)

Nochwas, er nörgelt immer ein bischne, von wegen
warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.


?
fopen_s gibt`s ja nicht... :)
0 Punkte
Beantwortet von Experte (3.2k Punkte)

fopen_s(&outfile,"myfile.log","w")


hmm, doch, die funktion müsste es geben. hab ich ehrlich gesagt aber auch noch nie so recht beachtet und die warnung ignoriert oder abgeschaltet. die _s-version is halt etwas sicherer. ;)

Ele
...