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;
}
相关推荐
caimouse3 小时前
Reactos 第1章 概述
c语言·开发语言·架构
啊森要自信4 小时前
【GUI自动化测试】控件、鼠标键盘操作与多场景自动化
c语言·开发语言·python·adb·ipython
lpl3129055096 小时前
skynet 共享数据原理
服务器·c语言·lua
hahjee7 小时前
【鸿蒙PC】kcp 移植:AtomCode Skills 4 步速通单文件 C 库适配
c语言·华为·harmonyos
AI科技星8 小时前
《数术工坊:非欧射影录》类型:硬核光影·几何本源
c语言·开发语言·网络·量子计算·agi
QiLinkOS8 小时前
极客与商业思维的融合实践(1)
c语言·数据库·c++·人工智能·算法·开源协议
坚果派·白晓明8 小时前
鸿蒙PC】libuv适配:AtomCode Skills一站式指南
c语言·c++·华为·ai编程·harmonyos·atomcode
c++之路8 小时前
CMake 系列教程(五):进阶技巧
c语言·开发语言·c++
AI科技星10 小时前
《全域数学/数术工坊》体系总览
c语言·开发语言·汇编·electron·概率论
啦啦啦~~~33010 小时前
【装机工具】电脑重装系统!office安装管理软件!一键自动化下载、安装、部署Office的办公增强工具
运维·c语言·windows·自动化·电脑