ch - '0'是什么意思?
if(isdigit(ch)) operandStack.push(ch - '0');
operandStack是一个int型的栈,上面的程序的意思是不是可以这么理解:判断一个字符是不是数字,如果是,转换成int,压入栈。如果是这个意思,那么“ch - '0'”就是把字符变成int类型,为什么会这样呢?谢谢!!
作者: Purplepower 发布时间: 2011-06-14
所以‘9’-‘0’ = 9
作者: wuyu637 发布时间: 2011-06-14
'1' - '0' = 1;
'2' - '0' = 2;
作者: dizuo 发布时间: 2011-06-14
作者: maoxing63570 发布时间: 2011-06-14
作者: xiaoguangzaia 发布时间: 2011-06-14
ch等于‘0’
ch-'0'=0
ch等于‘1’
ch-'0'=1
...
ch等于‘9’
ch-'0'=9
作者: hedy007 发布时间: 2011-06-14
作者: googlekang 发布时间: 2011-06-14
ch是 char类型,把ch - '0'把acs码转化成int。
'1' - '0' = 1;
'2' - '0' = 2;
++
'1'的ascii码比'0'的ascii码大1,所以'1' - '0' = 1;
...
作者: pathuang68 发布时间: 2011-06-14
作者: hnuqinhuan 发布时间: 2011-06-14
作者: sanshao1314 发布时间: 2011-06-14
作者: Purplepower 发布时间: 2011-06-14