[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Платформо-независимые типы в ANSI C.



On 2012-10-07, yuri.nefedov@gmail.com wrote:

> On Sun, 7 Oct 2012, Dmitrii Kashin wrote:
>
>> Я слышал, что существуют типы, однозначно определяющие количество бит в
>> объявляемой сущности (типа uint32), но не смог найти, где они
>> определяются.
>
>  stdint.h
>
>  А вообще очень полезный ресурс - wikipedia )
>  https://en.wikipedia.org/wiki/C_data_types
>
А еще полезней:

  http://www.open-std.org/jtc1/sc22/wg14/

откуда вытягивается PDF файл:

  http://www.open-std.org/jtc1/sc22/wg14/www/C99RationaleV5.10.pdf

и далее поиск по документы...

> В общем, я пишу структуры для сетевого взаимодействия двух машин, одна из
> которых 32х-разрядная, а другая - 64х-разрядная. Мне нужно, чтобы структуры
> выглядели побитово одинакого на обеих платформах.

У меня возник встречный вопрос, POSIX определяет 4 функции в вариантах
16-/32-бит:

  http://pubs.opengroup.org/onlinepubs/9699919799/functions/htonl.html
                    htonl, htons, ntohl, ntohs - convert values between host
                    and network byte order

А как быть с 64-битами? Или в сетевом стеке нет полей с 64-битами...?

-- 
Best regards!


Reply to: