Вопрос о проверке функции на байт целое число в C # - PullRequest
0 голосов
/ 20 января 2011

Как я могу проверить значение xx целое число байтов (подписанный или без знака) xx означает 1, 2, 4, 8.

Предполагается, что мне нужно проверить 65 (65 - это строковое значение в настоящее время) - это 1-байтовое целое число или нет?

Как мне написать крошечную функцию для проверки?

Я не знаюне знаю точного значения для целое число байтов .

Ответы [ 2 ]

2 голосов
/ 20 января 2011

Звучит так, будто вам нужно что-то, что проверит число, чтобы определить, соответствует ли оно целому числу в 1 байт. 1-байтовое целое число может содержать число от 0 до 255 (если оно не подписано) или от -128 до 127, если оно подписано. Так что вам просто нужно что-то, что проверяет, находится ли число в этом диапазоне. Байт по умолчанию не подписан в C #, поэтому вам просто нужно:

return (x >= 0 && x <= 255);

Почему эти значения? Это связано с тем, что в байте хранится восемь битов, которые могут хранить от 2 до 8 возможных значений. 2 ^ 8 = 256.

1 голос
/ 20 января 2011
bool Is1Byte(string val)
{
    try
    {
       int num = int.Parse(val)
       return (num >= -128) && (num <= 127);
    }
    catch(Exception)
    {
        return false;
    }
}
...