C 按位与,按位或,按位异或
按位与: 相当于集合中的交集, 0&0=0, 0&1=0, 1&0=0, 1&1=1
按位或:相当于集合中的并集,0|0=0, 0|1=1, 1|0=1, 1|1=1
按位异或:相同为0,不相同为1, 0^0=0, 1^1=0, 0^1=1, 1^0=1, 可用与加密与解密。
文件名为encrypt.h,其实不应该叫这个名字,但就这样吧。
void encrypt(char * message){ //当指向最后一位时为0 while(*message) { *message = (*message) ^ 31; message++; } }
#include<stdio.h> #include"encrypt.h" int main(){ char message[] = "i need some frends"; encrypt(message); printf("加密后的信息为:%s\n",message); encrypt(message); printf("解密后的信息为:%s\n",message); getchar(); return 0; }
为什么会出现乱码呢?
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步