Мне нужен переносимый способ распечатать значение переменной n типа size_t
. Поскольку я использую ANSI C89, я не могу использовать модификатор длины z
. Мой текущий подход заключается в том, чтобы присвоить значение long unsigned int
:
printf("%lu\n", (long unsigned int) n);
При условии, что size_t
определяется как unsigned int
или long unsigned int
, я не вижу, как это произойдет. Безопасен ли литье?