hi,
Ich hab jetzt auch mal das Programm geschrieben (ich weiß is schon ne weile her das die aufgabe gestellt wurde ,ich bin aber erst vor kurzem drauf gestoßen).
Geschrieben is es komplett in C kann aber zZt. nur Caesar'isch verschlüsseln, (die Vigenere'ische hab ich auch noch vor zu implementieren)
Bis jetzt hab ich das Prog. nur auf linux getestet ,müsste aber ohne weiteres auch auf Win laufen!
Code:
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int main(int argc, char* argv[])
{
//Variablen
FILE* file;
int i=0;
int key =0;
long file_lenght;
//Testen ob genug Argumente übergeben wurden
if(argc != 4)
{
printf("usage: %s input_file output_file key\n",argv[0]);
return 1;
}
key =atoi(argv[3]);
//Datei öffnen
file =fopen(argv[1],"r");
if(NULL ==file)
{
printf("Fehler: Konnte Datei nicht öffnen.\n");
return 1;
}
//Länge der Datei rausfinden
fseek(file,0,SEEK_END);//filepointer an das ende der Datei setzen
file_lenght =ftell(file);//die position des fp bekommen (=Länge der datei)
rewind(file);//fp wieder an den Anfang setzen
char file_input[file_lenght];//char-feld mit der größe der Datei erzeugen
//Datei lesen
fread(file_input,sizeof(file_input),1,file);
fclose(file);//Datei schließen
//Datei (zum schreiben) öffnen
file =fopen(argv[2],"w");
if(NULL ==file)
{
printf("Fehler: Datei konnte nicht geöffnet werden.\n");
return 1;
}
//Text verschlüsseln und ausgeben
for(i;i<file_lenght;i++)
{
fprintf(file,"%c",file_input[i]+key);
}
fclose(file);//datei schließen
return 0;
}
Was haltet ihr davon?
Wenn ihr Fehler o.ä. findet bitte posten!
cya, MuskelBiber