文字列を16進数に変換してから&操作を実行しています。問題があると思われるシナリオは次のとおりです。
byte[] buffer;
string hexoutput;
char[] WaitXMSvalues = WaitXMS.ToCharArray(); // WaitXMS is a textbox, input = 10
foreach (char letter in WaitXMSvalues)
{
// Get the integral value of the character.
int value = Convert.ToInt32(letter);
// Convert the decimal value to a hexadecimal value in string form.
hexoutput = String.Format("{0:X}", value);
}
buffer[0] = Convert.ToByte(hexoutput & 0xFF);
上記の行でエラーがスローされます。
Operator '&' cannot be applied to operands of type 'string' and 'int'
ここでの問題は何ですか?
次のように、C++ アプリでこれを行いました。
buffer[0] = WaitXMS->getText().getHexValue32() & 0xFF;
そしてうまくいくようです。私の C# コードの問題点は何ですか?
助けてください!