【问题标题】:Question On Validate Function On Byte Integer in C#关于 C# 中字节整数验证函数的问题
【发布时间】:2011-06-12 08:54:51
【问题描述】:

我如何验证一个值是xx 字节整数(有符号或无符号) xx 代表1248

假设我需要验证65(65 当前是一个字符串值) 是否为 1 字节整数?

如何编写一个小函数来验证它?

我不知道字节整数的确切含义

【问题讨论】:

标签: c# integer c#-2.0 byte validation


【解决方案1】:
bool Is1Byte(string val)
{
    try
    {
       int num = int.Parse(val)
       return (num >= -128) && (num <= 127);
    }
    catch(Exception)
    {
        return false;
    }
}

【讨论】:

  • 嗨pivotnig,我可以理解你输入的主要陈述。但是 int 128 和 127 的含义是什么?谢谢。
  • 从 jackson 窃取:一个 1 字节的整数可以包含 0 到 255(如果无符号)或 -128 到 127(如果有符号)之间的数字
【解决方案2】:

听起来您需要的是测试一个数字以查看它是否适合 1 字节整数的东西。 1 字节整数可以包含介于 0 和 255(如果无符号)或 -128 和 127(如果有符号)之间的数字。所以你只需要一些测试来看看这个数字是否在这个范围内。 byte 在 C# 中默认是无符号的,所以你只需要:

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

为什么是这些值?这是因为一个字节是八位存储,可以存储2到8个可能的值。 2^8 = 256。

【讨论】:

  • 我认为你想用值替换 0,否则它总是正确的
  • @pivoting:是的,我一发布就发现了它摇晃
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-05
相关资源
最近更新 更多