Хорошо, я приготовил некоторый код, чтобы поменять местами шестнадцатеричные символы как часть забавного упражнения, которое я составил.
Вот что у меня есть на данный момент:
#include <stdio.h>
int main() {
char a,b,c;
while (1) {
c = getchar();
if (!feof(stdin)) {
a = c % 16;
b = (c - a) / 16;
c = (a*16) + b;
putchar(c);
}else{break;}
}
return 0;
}
Хорошо работает для большинства значений. Например, 0xA0 становится 0x0A и т. Д. *
Однако, это не очень хорошо со значениями, начинающимися с 'F'.
0xF1 становится 0x10
0xFF становится 0xF0
и т.д ...
Может ли кто-нибудь указать мне правильное направление?