Warum wurden in C99 keine neuen (bitbreitenspezifischen) printf () -Formatoptionszeichenfolgen übernommen?

Während der Recherche, wie man plattformübergreifend vorgehtprintf() Format Strings in C (das heißt, unter Berücksichtigung der Anzahl der Bits, die ich für jedes Integer-Argument erwarte)printf() sollte sein) Ich bin rüber gelaufendieser Abschnitt des Wikipedia-Artikels überprintf(). Der Artikel beschreibt nicht standardmäßige Optionen, die übergeben werden könnenprintf() Formatzeichenfolgen, z. B. (eine scheinbar Microsoft-spezifische Erweiterung):

printf("%I32d\n", my32bitInt);

Weiter heißt es:

ISO C99 enthält die Header-Datei inttypes.h, die eine Reihe von Makros für die plattformunabhängige PrintF-Codierung enthält.

... und listet dann eine Reihe von Makros auf, die in der Kopfzeile zu finden sind. Wenn ich mir die Header-Datei anschaue, müsste ich schreiben:

 printf("%"PRId32"\n", my32bitInt);

Meine Frage ist: Vermisse ich etwas? Ist dies wirklich die Standardmethode für C99? Wenn ja warum? (Obwohl ich nicht überrascht bin, dass ich noch nie Code gesehen habe, der die Formatzeichenfolgen auf diese Weise verwendet, da er so umständlich erscheint ...)

Antworten auf die Frage(5)

Ihre Antwort auf die Frage