📄 crypt.c
字号:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//僼傽僀儖埫崋壔
main (int argc, char* argv[]) {
char ch;
FILE *fp; //擖椡僼傽僀儖億僀儞僞
FILE *wfp; //弌椡僼傽僀儖億僀儞僞
char filename[256]; //擖椡僼傽僀儖柤
char outfilename[256]; //弌椡僼傽僀儖柤
char key[128]; //埫崋僉乕
int keylen; //僉乕偺挿偝
int i = 0;
//尨暥僼傽僀儖柤偺寛掕
if (argc > 1) {
strcpy(filename, argv[1]);
} else {
printf("僼傽僀儖柤傪擖椡偟偰壓偝偄 > ");
scanf("%s", filename);
}
//埫崋僉乕偺擖椡
printf("埫崋僉乕傪擖椡偟偰壓偝偄 > ");
scanf("%s", key);
keylen = strlen(key);
//尨暥僼傽僀儖乮擖椡僼傽僀儖乯僆乕僾儞
fp = fopen(filename, "rb");
if (!fp){
printf("僼傽僀儖僆乕僾儞僄儔乕\n");
exit(1);
}
//埫崋壔僼傽僀儖乮弌椡僼傽僀儖乯僆乕僾儞
strcpy(outfilename, filename);
strcat(outfilename, "_");
wfp = fopen(outfilename, "wb");
if (!wfp){
printf("僼傽僀儖僆乕僾儞僄儔乕\n");
exit(1);
}
//埫崋壔
while (fread(&ch, sizeof(char), 1, fp) == 1) {
ch = ch + key[i++];
if(i >= keylen) { i = 0; }
fwrite(&ch, sizeof(char), 1, wfp);
}
fclose(wfp);
fclose(fp);
printf("僼傽僀儖 %s 傪埫崋壔偟傑偟偨\n", filename);
printf("嶌惉僼傽僀儖丗%s\n", outfilename);
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -