一个加密程序,实现将明文字符串加密成密文,加密算法为简单取反
如{"aaa","bbb"},加密后为{'/x9E','/x9E','/x9E','/xFF','/x9D','/x9D','/x9D','/xFF'}
#include <stdio.h>
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
char okstr[10240];
int pos,i,len,clock=0;
unsigned char chr,right=1;
FILE *fp=fopen("c://000.txt","rb");
len=fread(okstr,1,10240,fp);
fclose(fp);
MessageBox(NULL,"开始转换","信息",0);
fp=fopen("c://111.txt","wb");
fprintf(fp," {/r/n");
for(i = 0;i<2;i++)
fprintf(fp,"/t");
for(pos = 0 ; pos < len ; pos++) {
chr = okstr[pos];
if(chr == '//') {
chr = okstr[++pos];
if(chr == 'r')
fprintf(fp,"'//xF2',");
else if(chr == 'n')
fprintf(fp,"'//xF5',");
else if(chr == '//')
fprintf(fp,"'//xA3',");
else if(chr == 34)
fprintf(fp,"'//xDD',");
else
fprintf(fp,"/r/n/r/n/r/nError char://%s/r/n/r/n/r/n!",chr);
clock = clock + 1;
} else if(right) {
if( chr == 34)
right = 0;
else if( chr != 9 && chr != 10 && chr != 13 && chr != ' ' && chr != ',' &&
chr != '{' && chr != '}' ) {
fprintf(fp,"'//x%02X',",(unsigned char)~chr);
clock = clock + 1;
}
} else if ( chr == 34) {
fprintf(fp,"'//xFF',");
clock = clock + 1;
right = 1;
} else {
fprintf(fp,"'//x%02X',",(unsigned char)~chr);
clock = clock + 1;
}
if( clock == 10 ) {
fprintf(fp,"/r/n");
for( i = 0 ;i<2 ;i++)
fprintf(fp,"/t");
clock=0;
}
}
fprintf(fp,"/r/n/t}");
if(!right)
fprintf(fp,"/r/n/r/n/r/nError:more (!/r/n/r/n/r/n");
else
fprintf(fp,"/r/n/r/n/r/nOK!/r/n/r/n/r/n/r/n");
fclose(fp);
MessageBox(NULL,"转换完成!","信息",0);
}
如{"aaa","bbb"},加密后为{'/x9E','/x9E','/x9E','/xFF','/x9D','/x9D','/x9D','/xFF'}
#include <stdio.h>
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
char okstr[10240];
int pos,i,len,clock=0;
unsigned char chr,right=1;
FILE *fp=fopen("c://000.txt","rb");
len=fread(okstr,1,10240,fp);
fclose(fp);
MessageBox(NULL,"开始转换","信息",0);
fp=fopen("c://111.txt","wb");
fprintf(fp," {/r/n");
for(i = 0;i<2;i++)
fprintf(fp,"/t");
for(pos = 0 ; pos < len ; pos++) {
chr = okstr[pos];
if(chr == '//') {
chr = okstr[++pos];
if(chr == 'r')
fprintf(fp,"'//xF2',");
else if(chr == 'n')
fprintf(fp,"'//xF5',");
else if(chr == '//')
fprintf(fp,"'//xA3',");
else if(chr == 34)
fprintf(fp,"'//xDD',");
else
fprintf(fp,"/r/n/r/n/r/nError char://%s/r/n/r/n/r/n!",chr);
clock = clock + 1;
} else if(right) {
if( chr == 34)
right = 0;
else if( chr != 9 && chr != 10 && chr != 13 && chr != ' ' && chr != ',' &&
chr != '{' && chr != '}' ) {
fprintf(fp,"'//x%02X',",(unsigned char)~chr);
clock = clock + 1;
}
} else if ( chr == 34) {
fprintf(fp,"'//xFF',");
clock = clock + 1;
right = 1;
} else {
fprintf(fp,"'//x%02X',",(unsigned char)~chr);
clock = clock + 1;
}
if( clock == 10 ) {
fprintf(fp,"/r/n");
for( i = 0 ;i<2 ;i++)
fprintf(fp,"/t");
clock=0;
}
}
fprintf(fp,"/r/n/t}");
if(!right)
fprintf(fp,"/r/n/r/n/r/nError:more (!/r/n/r/n/r/n");
else
fprintf(fp,"/r/n/r/n/r/nOK!/r/n/r/n/r/n/r/n");
fclose(fp);
MessageBox(NULL,"转换完成!","信息",0);
}