【发布时间】:2020-02-03 18:50:50
【问题描述】:
我昨天基本上发布了这个问题,但我遇到了不同类型的错误。所以我试图创建一个程序,用户输入一个 12 位二进制汉明码序列,如“100010010001”,它应该打印出其对应的 ASCII 字符,在本例中为“A”。
问题是它似乎适用于像“A”这样的单个字符,但是如果我输入表示“ABC”的二进制序列 100010010001010110010010010010000011,它会打印出与应该打印的内容无关的随机字符。我不明白是什么导致了这个问题?
char charToBin(char usersInput[]) {
char j = 0 ;
for (int i = 0; i <= 12 ; i++) {
if((i == 0) || (i == 1) || (i == 3) || (i == 7)){
continue ;
} ;
usersInput[j] = usersInput[i] ;
j++ ;
} ;
char c = strtol(usersInput, (char **)NULL, 2);
return c;
}
【问题讨论】:
标签: c character-encoding binary character ascii