Каков правильный спецификатор printf для печати pid_t
В настоящее время я использую явное преобразование в long и используя %ld для печати pid_t, существует ли спецификатор, например %z для size_t для pid_t?
Если не лучший способ печати pid_t?
Ответ 1
Там нет такого спецификатора. Я думаю, что вы делаете, это хорошо & hellip; Вы можете использовать еще более широкий тип int, но нет реализации, в которой pid_t больше, чем long и, вероятно, никогда не будет.
Ответ 2
С целочисленными типами, не имеющими соответствующего спецификатора формата, как в случае pid_t, но с известным знаком 1, приведите к самому широкому совпадению со знаком типа и напечатайте. Если знак не известен, приведите к самому широкому типу без знака.