问题源地址:http://q.cnblogs.com/q/34775/
问题描述:
1 #include<iostream.h> 2 #include<vector> 3 #include<string> 4 using namespace std; 5 int main() 6 { 7 char c_i=5; 8 char c_p=2; 9 char c_r=c_i/c_p; 10 cout<<(int)c_r; //此输出和 cout<<c_i/c_p;可以出结果; 11 //cout<<c_r;会出来一个圈(不认识是什么符号) 12 } 13 想问下作用的机理? 14 char/char出来是char 还是int? 对此char“除/”的过程是如何运行的?
解答:
/的左右操作类型为数值,其实char本身就是一个整形数据,可以看一下ASCII表,char/char得到的是一个整形数据,对char做/操作的时候会将char看做整形数据。具体怎么个过程,看一下反汇编。
==============================================================================
本文转自被遗忘的博客园博客,原文链接:http://www.cnblogs.com/rollenholt/archive/2012/05/02/2478782.html,如需转载请自行联系原作者