c语言预处理与位运算
#include <stdio.h>
#define PI 3.1415926
//预处理-代码执行的前提-#开头-优先运行
//宏定义#define 标识符(宏名) 字符串
//作用范围从宏定义到结束
//可以用#undef 标识符 (宏名)取消作用域
//宏名习惯用大写,但不强制要求
//宏定义不占用内存,只进行字符调换
//文件包含#include "文件名"
//<>只能用于库文件,""可以用于库文件,子函数,子文件
//自己写的尽量用.h,当成头文件来用
//条件编译
//#ifdef 标识符
// 程序段1
//#else
// 程序段2
//#endif
int main(){
int a,b;
a = 0xAD;
b = 0x69;
printf("%x\n",a&b);
printf("%x\n",a|b);
printf("%x\n",a^b);
a = a^b;
b = a^b;
a = a^b;
printf("%x %x",a,b);
printf("%f",PI*3);
}
//位运算
//&按位与,有0就是0
//|按位或,有1就是1
//^按位异或,相同为0,不同为1 ,与0异或原值不变
//~取反,把0变1,把1变0,单目运算符 ,注意取反前面的0都变1
//<<左移 1<<3 0001->1000
//>>右移 8>>2 1000->0010
//左移右移注意软件前面补1还是补0
//最高位是符号位
网友评论