第3章有些东西似乎不够条件。留着以后补课吧。
第4章才讲数据类型和头文件,我觉得这样的安排也是蛮合理的。不多说了,直接上代码吧。分而治之。
一个简单的异或加密例子
头文件 encrypt.h
/* 自定义异或加密头文件 */ void encrypt(char *str);
异或加密函数文件 encrypt.c
/** 自定义简单异或加密库 2016-12-03 **/ #include "encrypt.h" void encrypt(char *str){ //参数为数组指针 while(*str){ //遍历数组 *str = *str^51; //因为chaer是整形,可以直接计算 str++; } }
主文件
/** 《嗨翻C语言》随书练习 4章 数据类型及分而治之 2016-12-03 里面讲了一些编译技巧,以后再补课吧 xiousheng@126.com **/ #include <stdio.h> #include "encrypt.c" //自定义异或加密的库 void encryption(); //定义加密函数 void Decrypt(); //节目函数 int main(){ encryption(); Decrypt(); } void Decrypt(){ FILE *fp = fopen("1.txt","r"); if(fp != NULL){ char msg[80]; fgets(msg,80,fp); //从输入文件读取一行字符串 printf("1.txt里文本读出:%s\r\n",msg); encrypt(msg); printf("1.txt里文本解密:%s\r\n",msg); } fclose(fp); } void encryption(){ char msg[80]; printf("请输入要加密的文本\r\n"); fgets(msg,80,stdin); encrypt(msg); //调用自定义库里的异或加密函数 printf("%s\r\n",msg); FILE *fp; fp = fopen("1.txt","w"); if(fp != NULL){ fprintf(fp,"%s",msg); } fclose(fp); printf("文本加密并保存到了1.txt文件\r\n"); }
一些简单的容易忘记的直接截图吧。