Руководство по спецификатору формата для C - PullRequest
0 голосов
/ 18 декабря 2018

Существует ли полное онлайн-руководство по спецификаторам формата C для каждого типа данных и для всех случаев?Я нашел только частичные и контрастные ссылки, которые не объясняют все возможные случаи.

1 Ответ

0 голосов
/ 18 декабря 2018

Руководство окончательное для этого является действительным стандартом ISO.Любой другой источник страдает от потенциального недостатка в том, что он может быть неверным или неполным.Стандарт, по определению , и правильный, и полный (a) .

И, хотя документы стандартов иногда могут быть сухими и трудными для чтения, разделы, охватывающиеспецификаторы формата достаточно ясны как с точки зрения значения всех спецификаторов (включая флаги, спецификаторы ширины / точности и модификаторы длины), так и с типами данных, которые вы можете использовать с этими спецификаторами.

Например, , C11 (b) подробно описывает все спецификаторы формата в 7.21.6.1 и 7.21.6.2 для семейства функций printf и scanf соответственно.Последним свободным вариантом этой итерации стандарта является документ N1570 .

То есть, фактически, стандарт C11 - официально это последний черновик из C11 и, чтобы получить настоящий стандарт, вам нужно купить его у органа по стандартизации вашей страны.Однако различия незначительны и, как правило, носят административный характер.


(a) Я не хочу сказать, что стандарт является полностью согласованным или не содержит ошибок, просточто это является стандартом.Это означает, что в ожидании утвержденных изменений реализации должны следовать указанному стандарту, чтобы считаться C. Если реализация делает это, она действительна, независимо от того, какой стандарт может иметь в ней стандарт: -)


(b) Хотя C11 (итерация, которую мы используем и поэтому наиболее знакомы с ней), возможно, была официально заменена на C18 , изменения были только включением TCи исправление дефектов.Не было существенных изменений в «мясе» стандарта, в частности по этому вопросу, спецификаторов формата.

...