因为我知道如何使用此方法手动将十六进制转换为十进制.从右到左阅读,最后一位数乘以常数值16加上第一位数.
For example:
12h = 2 + (1 * 16) = 18
99h = 9 + (9 * 16) = 153
Run Code Online (Sandbox Code Playgroud)
如何从十进制转换回十六进制?
我有用于反转字符串的代码.假设我键入'ABC',输出将为'CBA'.但是,有些代码行我完全不明白.
1 #include <stdio.h>
2 #include <string.h>
3
4 void print_reverse(char *s) {
5 size_t len = strlen(s);
6
7 char *t = s + len-1;
8 while(t >= s) {
9 printf("%c", *t);
10 t = t-1;
11 }
12 puts("");
13 }
14
15 int main()
16 {
17 char charinput[100];
18 printf("Enter character you want to reverse:");
19 fgets(charinput, 100, stdin);
20 print_reverse(charinput);
21 getchar();
22 }
Run Code Online (Sandbox Code Playgroud)
第7行和第8行有什么作用?指针t的输出是什么?