相关疑难解决方法(0)

142
推荐指数
5
解决办法
32万
查看次数

如何将十六进制值解析为uint?

uint color; 
bool parsedhex = uint.TryParse(TextBox1.Text, out color); 
//where Text is of the form 0xFF0000
if(parsedhex)
   //...
Run Code Online (Sandbox Code Playgroud)

不起作用.我究竟做错了什么?

c#

69
推荐指数
4
解决办法
8万
查看次数

从隐含的无符号十六进制字符串构造 BigInteger 的正确方法是什么?

我遇到了一个问题,因为我有一个隐含的无符号十六进制数作为字符串,由用户输入提供,需要转换为BigInteger.

由于BigInteger设置了最高阶位 (0x8 / 1000b) 的任何输入的有符号性质,结果数字被视为负数。然而,这个问题不能通过简单地检查符号位并乘以 -1 或由于不尊重基础符号的补码获得绝对值来解决,例如将所有值 0xF* 视为 -1。

以下是一些示例输入/输出

var style = NumberStyles.HexNumber | NumberStyles.AllowHexSpecifier;


BigInteger.TryParse("6", style) == 6   // 0110 bin
BigInteger.TryParse("8", style) == -8  // 1000 bin
BigInteger.TryParse("9", style) == -7  // 1001 bin
BigInteger.TryParse("A", style) == -6  // 1010 bin
...
BigInteger.TryParse("F", style) == -1  // 1111 bin
...
BigInteger.TryParse("FA", style) == -6 // 1111 1010 bin
BigInteger.TryParse("FF", style) == -1 // 1111 1111 bin
...
BigInteger.TryParse("FFFF", style) == -1 …
Run Code Online (Sandbox Code Playgroud)

c# hex biginteger ones-complement

5
推荐指数
1
解决办法
341
查看次数

标签 统计

c# ×3

hex ×2

biginteger ×1

decimal ×1

ones-complement ×1

type-conversion ×1