Wie drucken Sie eine begrenzte Anzahl von Zeichen?
Sorry zu legen, nach oben, über etwas so einfach, aber ich sehe nicht, was ich falsch mache hier.
char data[1024];
DWORD numRead;
ReadFile(handle, data, 1024, &numRead, NULL);
if (numRead > 0)
printf(data, "%.5s");
Meine Absicht, mit den oben genannten ist, um Daten aus einer Datei Lesen, und dann drucken nur aus 5 Zeichen. Jedoch, es druckt alle 1024 Zeichen ein, die im Gegensatz zu dem, was ich lese hier. Das Ziel ist natürlich, zu tun, so etwas wie:
printf(data, "%.*s", numRead);
Was mache ich hier falsch?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie die Parameter in der falschen Reihenfolge. Das sollte geschrieben werden:
Dem ersten parameter
printf
ist der format-Bezeichner, gefolgt von allen Argumenten (die von Ihrem Planer)..
) unnötig in die format-strings oben?Ich denke, Sie wechseln die Reihenfolge der Argumente zu
printf
:Du bist nicht aufrufen printf() richtig.
Was bedeutet...
Sind Sie mit falschen syntax für die
printf
- Anweisung und die .Nummer ist nur für numerische Variablen.So sollte es sein,