Длинные в теории могут быть 64 битами. Я никогда не работал с 64-битной машиной, но у меня сложилось впечатление, что большинство компиляторов по-прежнему держат long на 32 и вынуждают вас использовать long long для 64. Я думаю, хитро, это все зависит от реализации независимо от соглашений ,

а мне нужно использовать целые числа фиксированной ширины для связи с внешними устройствами, такими как ПЛК. Я также использую их для определения битовых масок и выполнения битовых манипуляций с данными изображения. AFAIK стандарт C99 определяет целые числа фиксированной ширины, такие как int16_t. Однако компилятор, который я использую, VC ++ 2008 не поддерживает C99, и AFAIK Microsoft не планирует его поддерживать.

Мой вопрос: каков наилучший способ использования целых чисел фиксированной ширины в C ++?

Я знаю, что VC ++ определяет нестандартные целые числа фиксированной ширины, такие как __int16, но я не решаюсь использовать нестандартный тип. Будет ли следующий стандарт C ++ определять целые числа фиксированной ширины?

Ответы на вопрос(6)

Ваш ответ на вопрос