Re: Что это значит?
От: Bill Россия  
Дата: 19.07.02 09:23
Оценка: 7 (1)
Здравствуйте Аноним, Вы писали:

А>Привет.


А>Попалась в коду такая строчка:


А>

А>int foo(unsigned val)
А>{
А>    val &=(val-1);
А>    // ... остальное пропущенно

А>}

А>


А>Вопрос, что такое unsigned? Я понимаю, что беззнаковый тип, но какой.

А>Если бы unsigned int — то все ясно, а есть просто, то что это?

А>И еще, объясните пожалуйста подробнее что это за выражение:


А>val&=(val-1)


А>И что оно делает при любом (unsigned) val?


А>Спасибо

Данное выражение может быть использовано:
1. для определения значения val как стпень 2-х — (val &= (val-1)) == 0;
2. для подсчета количества единиц байте, слове и т.д. (естественно требуется цикл).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.