0
A
답변
3
정수 num은 BCD 값을 저장합니다 ... 더 깨끗한 방법 일 수 있지만 트릭을 수행해야합니다. 그러나 나는 왜 다시 물을 것인가? 당신은 ... (이 검사 경계가없는) LINQ에서 작업을 수행하려는 경우
char[] str = "12345".ToCharArray();
int num = 0;
for (int i = 0; i < str.Length; i++)
{
var val = str[str.Length -1 - i] - 48;
if (val < 0 || val > 9)
throw new ArgumentOutOfRangeException();
num += val << (4 * i);
}
Console.WriteLine(num.ToString("x2")); //must be viewed as hex
은 ...
int vs = "12345".ToCharArray().Reverse()
.Select((c, i) => (c-48) << 4 * i)
.Sum();
BCD 숫자를 저장하는 경우에만 유용합니다. 왜 ACSII를 BCD로 변환하려고합니까? –
은 숙제 냄새가납니다. –
사람들이 다른 질문으로 대답 할 때 나는 그것을 싫어한다. 그가 원하기 때문에 그는 ASCII를 BCD로 변환하려고합니다. –