C语言学习02—位运算

1.符号~为按位求反,优先级为1

例:~0101->1010

2.符号<<为左移,高位移出,低位补0,优先级为2

例:0011<<1->0110

3.符号>>为右移,低位移出,高位补符号位,优先级为2

例:0101>>2->0001

4.符号&为按位与,优先级为3

例:0111&1100->0100

5.符号^为按位异或,相同为0,不同为1,优先级为4

例:0111^1100->1011

6.符合|为按位或,优先级为5

例:0111|1100->1111

7.运算优先级

(1)正负号>逻辑非>按位取反

(2)乘除>加减>按位左右移

(3)大小比较运算>相等比较运算

(4)按位与>按位异或>按位或

(5)逻辑与>逻辑或

(6)赋值操作

注:浮点数不能做位运算

8.char是字符型,本质是整型数,一个字节的整型,将char型赋给整型,打印出来对应字符的ASCII码值

复制代码
#include <stdio.h>
int main(){
	char c='A';
	short a=c;
	int b=c;
	printf("c=%c\n",c); //A
	printf("c=%d\n",c); //65
	printf("a=%d\n",a); //65
	printf("b=%d\n",b); //65
	
	c=0x40; //十六进制
	printf("c=%x\n",c); //40 %x表示输出类型为十六进制
	printf("c=%d\n",c); //64
	
	c=c<<1;
	printf("c=%d\n",c); //-128
	return 0;
}
相关推荐
爱编码的小八嘎5 小时前
C语言完美演绎4-7
c语言
炘爚6 小时前
C语言(文件操作)
c语言·开发语言
W.D.小糊涂7 小时前
gpu服务器安装windows+ubuntu24.04双系统
c语言·开发语言·数据库
C羊驼8 小时前
C语言:两天打鱼,三天晒网
c语言·经验分享·笔记·算法·青少年编程
本喵是FW10 小时前
C语言手记1
java·c语言·算法
炘爚12 小时前
C语言(const的指针定义的区别)
c语言
Z9fish13 小时前
sse哈工大C语言编程练习47
c语言·数据结构·算法
本喵是FW13 小时前
C语言手记2
c语言·开发语言
计算机安禾14 小时前
【C语言程序设计】第34篇:文件的概念与文件指针
c语言·开发语言·数据结构·c++·算法·visual studio code·visual studio
wangjialelele14 小时前
C++11、C++14、C++17、C++20新特性解析(一)
linux·c语言·开发语言·c++·c++20·visual studio