Информация об изменениях

Сообщение Re: тип данных int платформозависимый от 16.02.2022 8:43

Изменено 16.02.2022 8:45 Alexander G

Re: тип данных int платформозависимый
Здравствуйте, maks1180, Вы писали:

M>Нужен тип данных который будет: uint64_t для x64 платформ и uint32_t для x32 платформ.


Непонятно, что такое 64-разрядная и 32-разрядная платформа.
В обычном x86-64 32-разрядный int слегка более эффективен, чем 64-разрядный.
Да даже указатели иногда имеет смысл оставит ь64-битными https://en.wikipedia.org/wiki/X32_ABI

Если брать такой int, как указатель, то это intptr_t и unitptr_t.
Если такой, чтобы размер массива поместился — size_t, ssize_t, ptrdiff_t.

Можно упомянуть сюда же atomic_signed_lock_free и atomic_unsigned_lock_free — тип, выгодный для атомарного счётчика.

Да, а если взять просто тип "родной" для целочисленных вычислений, то это, внезапно, просто int.
Ну а то, что он может быть 32 и 64 битным на 64 разрядных платформах, так это потому, что оба примерно одинаково "родные"
Re: тип данных int платформозависимый
Здравствуйте, maks1180, Вы писали:

M>Нужен тип данных который будет: uint64_t для x64 платформ и uint32_t для x32 платформ.


Непонятно, что такое 64-разрядная и 32-разрядная платформа.
В обычном x86-64 32-разрядный int слегка более эффективен, чем 64-разрядный.
Да даже указатели иногда имеет смысл оставит 32-битными https://en.wikipedia.org/wiki/X32_ABI

Если брать такой int, как указатель, то это intptr_t и unitptr_t.
Если такой, чтобы размер массива поместился — size_t, ssize_t, ptrdiff_t.

Можно упомянуть сюда же atomic_signed_lock_free и atomic_unsigned_lock_free — тип, выгодный для атомарного счётчика.

Да, а если взять просто тип "родной" для целочисленных вычислений, то это, внезапно, просто int.
Ну а то, что он может быть 32 и 64 битным на 64 разрядных платформах, так это потому, что оба примерно одинаково "родные"