回答
作为C#7可以表示代码的二进制字面值:
private static void BinaryLiteralsFeature()
{
var employeeNumber = 0b00100010; //binary equivalent of whole number 34. Underlying data type defaults to System.Int32
Console.WriteLine(employeeNumber); //prints 34 on console.
long empNumberWithLongBackingType = 0b00100010; //here backing data type is long (System.Int64)
Console.WriteLine(empNumberWithLongBackingType); //prints 34 on console.
int employeeNumber_WithCapitalPrefix = 0B00100010; //0b and 0B prefixes are equivalent.
Console.WriteLine(employeeNumber_WithCapitalPrefix); //prints 34 on console.
}
的进一步信息可以发现here。
不,在C#中没有二进制文字。你当然可以使用Convert.ToInt32解析二进制格式的字符串,但我认为这不是一个好的解决方案。
int bin = Convert.ToInt32("1010", 2);
我会让问题在几个小时内公开,但这是第一个答案,如果它是真实的,它将被选为官方答案。谢谢。 – 2009-08-07 20:28:06
这是真的......现在不妨接受。 – 2009-08-07 20:30:01
的确如此,这是有效的,并且在大多数情况下它很有用。不幸的是,如果你在'switch(myVariable){case bin:Console.WriteLine(“value detected”)中使用它,打破; }'语句,因为'case'只允许常量。 – Matt 2013-12-19 12:15:26
您可以使用扩展方法:
public static int ToBinary(this string binary)
{
return Convert.ToInt32(binary, 2);
}
然而,这是否是明智的,我会离开给你(因为事实上它可以在任何字符串操作)。
- 1. C二进制文件的表示
- 2. 二进制表示的二进制表示
- 3. 二进制数表示在c中的一个长变量#
- 4. 获取的变量二进制表示用C
- 5. C#:二进制常量变量的位置
- 6. 二进制表示与INET_ATON()
- 7. 二进制补码表示
- 8. MIPS懂二进制表示
- 9. 二进制表示树
- 10. bigint转换为二进制(8)列的二进制表示
- 11. C++矢量二进制I/O
- 12. 为什么加入“常量”解决“无效操作数的二进制表示”
- 13. C++二进制堆
- 14. C二进制流
- 15. 使用C++预处理器的二进制表示查找表
- 16. 显示二进制
- 17. 二进制变量变量
- 18. 打印非常长的二进制表示的整数值
- 19. 二进制和十六进制中由7位数表示的值的数量
- 20. 如何按二进制表示法对二进制数组进行排序
- 21. 二进制表达式树C++
- 22. Integer.MIN_VALUE的二进制表示形式
- 23. 所有的二进制表示
- 24. 用二进制表示一个分数?
- 25. 在java中表示二进制关系
- 26. 非整数数字二进制表示
- 27. 解码NumPy int64二进制表示
- 28. 在文件中表示二进制树
- 29. 如何表示二进制透明度?
- 30. XML文件的二进制树表示。
你是什么意思? const int a = 2938315765; – Paco 2009-08-07 20:28:31
谢谢,我想你的结果是正确的,但我正在寻找系统的解决方案。我应该为每个需要转换的二进制常量发布一个问题stackoverflow? – 2009-08-07 20:29:11
..例如10110011 – 2009-08-07 20:29:46