長いNビットから切り取ってintを取得し、それを取り出す方法(および読み込み可能なintを取得する方法) 私は長いNビットから切り取ってintとcoutを得る方法(および読み込み可能なintを得る方法)
int count = sizeof(long) - sizeof(int);
int int_val =(long_val>> (sizeof(long) - count));
を試してみてくださいしかし、いくつかのhorible COUTを取得...私は何をしなければなら - int型を取得し、それをCOUT(と読めるint型を取得)するために、長いNビットからカットする方法?下位Nビットを取得するために
'long'が' int'よりも長いと仮定すると(whi chは悪い仮定です。彼らはしばしば同じ長さです)、あなたは好きなビット:高いものか低いものか? –
シフト量は 'sizeof(l) - (sizeof(l) - sizeof(i))'です。 'long'が64ビットで' int'が32ビットなら '32'です; 'long'と' int'が両方とも32ビットであれば、結果は '32 'です。しかし、後者の場合、それは間違っていると感じます... – sarnold
[ここで解決しようとしている根本的な問題は何ですか?](http://meta.stackexchange.com/questions/66377/what-is-the-xy-問題) – Johnsyweb