添加字符串和 int 作为十六进制

Adding string and int as hexadecimal

我想以十六进制方式将两个十六进制数相加,结果也应该是十六进制。 但问题是我有一个字符串“20010000”和 int 0x400050,我应该如何添加它们以接收 0x20410050?

我试过 int.Parse 各种十六进制选项,但结果总是十进制加法。

这是您要找的吗?

string aString = "20010000";
int a = Convert.ToInt32(aString, 16); // should be 536936448
int b = 0x400050; // should be 4194384

int sum = a + b; // should be 541130832
string sumString = sum.ToString("X"); // should be "20410050"
string sumStringWithPrefix = "0x" + subString; // should be "0x20410050"