Показать сообщение отдельно

  #7  
Старый 17.12.2009, 23:48
scrat
Постоянный
Регистрация: 08.04.2007
Сообщений: 853
С нами: 10048706

Репутация: 1540


По умолчанию

Цитата:
Сообщение от Algol  
МиниКвест.
Недавно выловил такой вот баг в программе:
Требовалось перебрать все значения байта от 0 до 255. Как оказалось, это сделать не так-то просто Очевидный, на первый взгляд код, не работает:

Код:
for (byte b = 0; b <= 255; b++)
      Console.WriteLine(b);
Кто скажет почему не работает этот код? (желательно без компиляции )
тут как-то замешано то, что все типы в .net основаны на object, и byte - это не привычные 8 битов.

Решение: Использовать CompareTo()

рабочий пример:
Код:
byte b = 0x0;
	for (; b.CompareTo(0xFF)<0 ; b++) Console.WriteLine("{0}",b);

Последний раз редактировалось scrat; 18.12.2009 в 00:04..
 
Ответить с цитированием