Code:
#include<iostream.h>
#include<stdlib.h>
#include<string.h>
using namespace std;
char w[300];
unsigned khoa;
void mahoa(char *w)
{
char *i;
for(i=w;*i;i++)
*i=*i^khoa;
}
int main()
{
cout<<"NHAP 1 XAU KY TU: ";
cin.getline(w,300);
cout<<"NHAP KHOA LA SO NGUYEN: ";
cin>>khoa;
mahoa(w);
cout<<"\nDA MA HOA: "<<w;
mahoa(w);
cout<<"\nDA GIAI MA: "<<w;
return 0;
}
các cậu xem hộ tớ cái mã hóa này
Code:
char *i;
for(i=w;*i;i++)
*i=*i^khoa;
sao lại dùng toàn con trỏ của i nhỉ - nó nghĩa là bảng mã ancII của chuỗi i ah
VD như dòng *i=*i^khoa là đang thực hiện trên ancII của chuỗi i ah