LINUX.ORG.RU

Число на 8 байт


0

0

Извините за ламерский вопрос, но как объявить число размером 8 байт? Я перехожу с винды, и не понимаю в чём проблема:

typedef unsigned long long uint64

....

add(uint64 ad){ .... }

int main(){ add((uint64)0xddaabbcc00000000); }

Пишет: /home/test/usersocket.cpp:496: error: integer constant is too large for 'long' type

>Я перехожу с винды, и не понимаю в чём проблема:

а причем здесь windows, любая книжка по С должна помочь.

0xddaabbcc00000000ULL

Да, есть еще stdint.h и uint64_t, и они по-моему являются частью стандарта.

fghj ★★★★★
()
Ответ на: комментарий от anonymous

>может вы всё-таки перхоlите с visual studio?

Я, кстати, недавно пробовал VS 2005, ее компилятор заявил что
fopen deprecated use M$_XYZ instead,
весьма способствует написанию кроссплатформенного кода.

fghj ★★★★★
()
Ответ на: комментарий от fghj

>windows

>стандарта

ну и шутник же ты :)

Pi ★★★★★
()

Кстати, рекомендую использовать стандартный заголовок inttypes.h. Тогда, насколько я понимаю, будет меньше проблем с 64 битами.

См. http://en.wikipedia.org/wiki/Inttypes.h

Davidov ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.