使用C语言对文本文件加密,算法函数先用最简单的 遇到英文字符则以ASCII码+1 的规则进行加密,但现在的问题是,将所有的文本内容转换完成之后,文本末尾会有一段乱码,不知道问题在哪?
//加密函数
void EncryptFile (char buffer[], int file_size, int key) {
int i;
for(i=0; i<file_size; i++) {
if (buffer[i] >= 'A' && buffer[i] <= 'Z' || buffer[i] >= 'a' && buffer[i] <= 'z')
buffer[i] = buffer[i] + key;
}
}
还有两个函数一个是打开文件,一个是储存加密文件的
请出给更完整的代码和具体的乱码例子。
猜测可能是你的buffer数组末尾没有给
\0
,写入了内存中的随机数据。