LINUX.ORG.RU

(C) Почему unsigned long long не вмещает 0xXXXXXXXXXX?


0

0

Насколько я пытаюсь представить, значение типа 0x5555555555 помещается в пять байт, то есть unsigned long long точно подойдет, но компилятор говорит, что только 0x55555555 подходит. В чем я ошибаюсь?

#include <stdio.h>

int main () {
//unsigned long long dig = 0x5555555555; // Error!
unsigned long long dig = 0x55555555; // No Error

printf("sizeof(dig): %i\ndig: %llx\n",sizeof(dig), dig);
return 0;
}


Ответ на: комментарий от ftor

Спасибо! Действительно ULL надо к константе дописать :-)

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