Изменение бита в байте - C#

Узнай цену своей работы

Формулировка задачи:

Помогите начинающему - покажите, в какую сторону копать. При выполнении программы
                //kX - номер байта в buf[64], kY - номер бита
            //модификация бита
   // 
            if((byte)(buf[kX] & kY) == 0)       // бит равен 0, устанавливаем в 1
                buf[kX] |= (byte)kY;
            else
172 ->              buf[kX] &= (byte)~kY;           //сброс бита в 0
System.OverflowException: Переполнение в результате выполнения арифметической операции. в PicBox1.MainForm.PictureBox1MouseDown(Object sender, MouseEventArgs e) в d:\C#Develop\PicBox1\PicBox1\MainForm.cs:строка 172 И как мне изменить бит?

Решение задачи: «Изменение бита в байте»

textual
Листинг программы
buf[kX] ^= (byte)(1 << kY);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.833 из 5