C語言問題,位運算,二進位制,C語言問題,位運算,二進位制

2021-04-21 09:42:24 字數 1032 閱讀 3303

1樓:聽不清啊

int bit_set(int *arg, int bit)ii) int bit_clear(int *arg, int bit)

iii) int bit_invert(int *arg, int bit)

三個函式的返回值為0,表示bit超範圍,操作失敗。

返回1表示操作成功。

2樓:青澎納翠桃

第一copy個結果的確是1111,但用%d輸出就是輸出他的十進位制數,所以輸出的是15

第二個就不是1111了,而是32個1(假設int點32位),因為向右移時,第一位(即符號位)是1,所以前面補的是1而不是0,所以是32個1,然後用%d輸出其十進位制數當然就是-1了

你可以改一下,看一下他的十六進位制數就知道了,輸出的時候用這個格式,printf("%x\n",c);

將十進位制數轉為二進位制數,用c語言,簡單一點並且要使用按位運算子

3樓:匿名使用者

#include

int main()

printf("%u(dec) = ",dec);

for(i=0;i<32;i++) printf("%u",bin[i]);

printf("(bin)\n");

return 0;

}執行結果:

12345678(dec) = 00000000101111000110000101001110(bin)

c語言中,十進位制數遇到&或者|等位運算子,系統會自動把十進位制數變成二進位制數進行操作?

4樓:匿名使用者

實際上並不存在這樣的轉換

10進位制 以及16進位制 8進位制其實

都是給人看的

對於計算機來說

專 都是二進位制

無論是做屬什麼運算,加減乘除... 都是以二進位制方式進行的 。

只不過 位運算在手動演算的時候,需要用二進位制。

所以這個轉換 同樣是只有人才會做的。

c語言十進位制轉二進位制,C語言十進位制轉二進位制

十進位制轉二進位制可以使用庫函式itoa。itoa函式原型 char itoa int value,char string,int radix 功能 將任意型別的數字轉換為字串。在中與之有相反功能的函式是atoi。nt value 被轉換的整數,char string 轉換後儲存的字元陣列,int ...

c語言裡,八進位制,十六進位制,二進位制,十進位制怎麼互

n進位制轉 baim進位制,10進製表示,n,m均小 du於10 如果大zhi於10需要 dao特殊處回理,需要使用字串來答 輔助處理了 int convertnumber int x,int n,int m z 0 nn 1 while y return z void main c語言裡,注意,說...

c語言的二進位制,八進位制,十進位制是什麼意思

在c語言裡,資料可以表示為 十進位制,八進位制,二進位制。其中以數字0開頭,由0 7組成的數是八進位制。以0x或0x開頭,由0 9,a f或a f 組成是十六進位制。除表示正負的符號外,由0 1組成是二進位制。1.十進位制 除表示正負的符號外,以1 9開頭,由0 9組成。如,128,234,278。...