例如:string s="3456";
s[0]-'0'表示3-0 也就是3。如果用c来输出3的话 要用%c,如果是%d,则对应输出的是S[3]的ASCll值,而c++中cout<<s[3] 输出的是3;
主要是想说一下 s[0]-'0'是ASCII相减,最后的结果是3-0=3;
例如 string s="735";
则s[2]-'1'=4; //(5-1)
这个主要来自于pta里面 有一题个位数统计 里面第十行就是这么理解。
例如:string s="3456";
s[0]-'0'表示3-0 也就是3。如果用c来输出3的话 要用%c,如果是%d,则对应输出的是S[3]的ASCll值,而c++中cout<<s[3] 输出的是3;
主要是想说一下 s[0]-'0'是ASCII相减,最后的结果是3-0=3;
例如 string s="735";
则s[2]-'1'=4; //(5-1)
这个主要来自于pta里面 有一题个位数统计 里面第十行就是这么理解。