用字符a来举例说明
字符:a
Bin(二进制):01100001
Dec十进制 :97
Hex(十六进制):61
当打印的时候 %c 输出的是字符 printf("%c ",97) 输出的 a
*c+1=97+1=98 printf("%c ",98) 输出 b
同理如果 printf("%d ",'a') 会输出 97
printf("%x ",'a'+1) 会输出 字符a十六进制的值+1 62
*c是char类型,char类型+1转成int,但是int值还是赋给了char类型的*c,取int的低位,所以最后的感觉好像就是*c+1就是取了*c后面的一个char类型数。
不知道你这个问题是否已经解决, 如果还没有解决的话: