好心的大大! 请帮忙帮我解答! 求助 有3题!

Home Home
引用 | 编辑 sakashan
2006-04-16 15:46
楼主
推文 x0
9. short int a = 39,b = 29;
cout << (a<<2) <<"\n"; //___156____
cout << ~a <<"\n"; //___-40____
cout << ~(a ^ b) <<"\n"; //___-59____
a=31000;b=23001;a+=b;cout<<a<<”\n”; //__-11535_____
a=-32768;a-=1;cout <<a << endl; //__32767_____
11. int a=5;
cout << a ..

访客只能看到部份内容,免费 加入会员



献花 x0
引用 | 编辑 sakashan
2006-04-16 22:25
1楼
  
真的没人能求救吗? 拜托!

献花 x0
引用 | 编辑 codeboy
2006-04-16 22:43
2楼
  
哪里不懂请举出来...方便我们帮你解答... 表情

献花 x0
引用 | 编辑 dxman
2006-04-18 12:43
3楼
  
刚刚看了一下..大概知道一些..小弟刚学不是很懂..
有不对的地方请多多指导~~

9.   short int a = 39,b = 29;     //将a,b定义为short int的资料型态..范围-32768~32767
    cout << (a<<2) <<"\n";     //将a=39左移两各位元(00100111==>10011100)
    cout << ~a <<"\n";         //将a作补数运算.. ~39 = -40.. ~0 = -1
    cout << ~(a ^ b) <<"\n";   //a^b==>将a跟b作XOR运算{00100111(39) XOR 00011101(29)}
                                // =00111010(58)   再作补数运算 ~58 = -59
    a=31000;b=23001;a+=b;cout<<a<<”\n”; //32767+1=-32768...因为超出short int定义的范围
                                            //所以a+b会变成54001==>-11535
    a=-32768;a-=1;cout <<a << endl;       //这各就跟上一各同意思 -32768+1=32767

献花 x0