a[i]
之前做题遇到的,当时没有区分,现在专门来记录一下,算是自我反省吧,本人编程能力较差,欢迎大家补充相关内容(撒花ing~)
这里针对a[i]是字符数组元素。
’0‘(字符0)的ASCII码是48。a[i]-'0'表示a[i]这个字符与字符0的ASCII码差值,(int)a[i]表示a[i]的ASCII码。所以如下图,7行与6行的差值是48.
第8行是突发奇想输出%c会怎样,就自己试了一下,没有太大的意义,这里解释一下:
ch-'0'的ASCII码的差值是50,ASCII码50正好对应着字符2(注意是字符2,不是数字2)
(图片来源百度)
当a[i]是数字字符时:a[i]-'0'有用,可以将字符转化成数字,同理要将数字转化成字符,只需数字+'0'即可。(平时做题遇到的也都是数字字符)
a[i]
之前做题遇到的,当时没有区分,现在专门来记录一下,算是自我反省吧,本人编程能力较差,欢迎大家补充相关内容(撒花ing~)
这里针对a[i]是字符数组元素。
’0‘(字符0)的ASCII码是48。a[i]-'0'表示a[i]这个字符与字符0的ASCII码差值,(int)a[i]表示a[i]的ASCII码。所以如下图,7行与6行的差值是48.
第8行是突发奇想输出%c会怎样,就自己试了一下,没有太大的意义,这里解释一下:
ch-'0'的ASCII码的差值是50,ASCII码50正好对应着字符2(注意是字符2,不是数字2)
(图片来源百度)
当a[i]是数字字符时:a[i]-'0'有用,可以将字符转化成数字,同理要将数字转化成字符,只需数字+'0'即可。(平时做题遇到的也都是数字字符)