參照我剛纔的問題,How can i implement AND and OR operations in c++錯誤執行「與」和「或」 C++
我的下一個問題是,有時候,它輸出例如110010 & 010101 = 110591.一些奇怪的號碼爲什麼會發生呢?
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
long int s;
long int l;
long int r;
cin>>s;
cout<<endl;
cin>>l;
cout<<setfill('0')<<setw (5)<<s<<endl<<setfill('0')<<setw (5)<<l<<endl;
r=s|l;
cout<<r<<endl;
return 0;
}
如果你知道他們在做什麼,他們不是「怪異的數字」;) – Marlon 2011-06-06 01:32:08
請發佈你使用的代碼,因爲這些數字沒有意義。對於正數* x *和* y *,* z * = * x *&* y *,* z *不能大於* x *且* z *不能大於* y *。 – 2011-06-06 01:33:33
// setw example #include #include using namespace std; int main(){ long int s; long int l; long int r; cin >> s; cout << endl; cin >> l; (5)<< s << endl << setfill('0')<< setw(5)<< l << endl; r = s | l; cout << r << endl; return 0; } –
Shadi
2011-06-06 01:36:06