C操作符練習

來源:互聯網
上載者:User

Task1:二進位位操作符

#include <stdio.h>

#define PRINT(int) printf(#int " = %d\n",int)

int main(void)

{

int x,y,z;

/*

 優先順序:位元運算符中:& > |

   位元運算符& > 邏輯運算子&&

   

*/

x = 03; y = 02; z = 01;

PRINT(x | y & z); //0011 | 0000 = 3

PRINT(x | y & ~ z); //0011 | 0010 = 3

PRINT(x ^ y & ~ z); //0011 ^ 0010 = 1

PRINT(x & y && z); //2 && 1 = 1

x = 1; y = -1;

PRINT(! x | x);  //((!x) | x)=false | x = 1

// http://www.bianceng.cn

PRINT(~ x | x);  //1111 = -1

PRINT(x ^ x);  //0001 ^ 0001 = 0

x <<= 3;PRINT(x); //左移n位效果上看成乘以n個2 = 8

y <<= 3;PRINT(y); //………………………………&hellip ;= -8

y >>= 3;PRINT(y); //右移n位效果上看成除以n個2 = -1

return 0;

}

輸出結果:

x | y & z = 3

x | y & ~ z = 3

x ^ y & ~ z = 1

x & y && z = 1

! x | x = 1

~ x | x = -1

x ^ x = 0

x = 8

y = -8

y = -1

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.