Почему __builtin_clzll(variable) возвращает случайное число, когда переменная равна 0, но возвращает 64, когда значение C++

Программы на C++. Форум разработчиков
Anonymous
Почему __builtin_clzll(variable) возвращает случайное число, когда переменная равна 0, но возвращает 64, когда значение

Сообщение Anonymous »

Я пытаюсь понять, как работает функция __builtin_clzll, но сталкиваюсь с неожиданным поведением при использовании переменной вместо прямого 0. Вот минимальный пример:

Код: Выделить всё

#include 
using namespace std;

int main() {
unsigned long long x = 0;
cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/79263140/why-does-builtin-clzllvariable-return-a-random-number-when-the-variable-is-0[/url]

Вернуться в «C++»