Zum Inhalt springen

Verschlüsselungsprogramm Problem mit Textdatei eingeben


Empfohlene Beiträge

Geschrieben

Hallo, ich stelle mich mal kurz vor. Ich bin Christian komme aus der nähe von Hamburg und studiere Elektrotechnik. Nun zu meinen Problem, ich möchte in der Konsole ein C Programm aufrufen. In dieses Programm möchte ich zwei Textdateien eingeben.Die Textdateien befinden sich im Ordner des Programmes.

Dieses soll wie folgt geschehen <Programmname> <Textdatei1> <Textdatei2>

#include <stdio.h>

#include <ctype.h> //Für die Umwandlung von Klein->Großbuchstaben

double func(int);

int main(char InpFileName[],char OutFileName[])

{

char ch;

char c;

int Verschiebung=3;

FILE *inp=NULL;

FILE *oup=NULL;

//Öffnen der Eingabedatei mit Kontrolle

inp=fopen(InpFileName,"rt");

if(inp==NULL)

{

printf("\nFEHLER!!!\n");

return -1;

}

//Öffnen der Ausgabedatei mit Kontrolle

oup=fopen(OutFileName,"wt");

if(oup==NULL)

{

printf("\nFEHLER!!!\n");

return -2;

}

Wenn ich das Programm jetzt starte bekomme ich immer eine Windowsfehlermeldung:

"encrypt1.exe hat ein Problem festgestellt und muss beendet werden"

Vielleicht könnt ihr mir ja helfen und sagen was ich falsch mache

vielen Dank

christian

Geschrieben

Der Kopf deiner main Funktion ist falsch.

Du bekommst als ersten Parameter immer die Anzahl der Programmargumente und als zweiten Parameter ein Array mit den Argumenten selber übergeben. Wobei das erste Argument immer der Programmname selber ist.


int main (int argc, char* argv[])
[/PHP]

Geschrieben

Ok, erstmal vielen Dank dafür, wie weise ich den jetzt meinem inpfilename und outputfilename die Werte zu?

int main (int argc, char* argv[])

{

char inpfilename[]="argv[]";

char outfilename[]="argv[]";

habe ich da schon den richtigen Ansatz?

Geschrieben
habe ich da schon den richtigen Ansatz?
Nein, das ist Blödsinn. Die Aufrufparameter stehen in argv[1] und argv[2], wenn denn welche angegeben wurden (in argv[0] steht der Name deines Programms). Ob das der Fall ist, kannst du am Wert von argc erkennen.

Ich würde dafür auch keine char-Arrays deklarieren, sondern direkt mit argv arbeiten. Oder hast du vor, die Strings zu ändern?

Geschrieben

Ja, vielen Dank für die Hilfe. Ich bin neu auf dm Gebiet und hab da bei der Eingabe einen üblen Denkfehler gemacht :upps. Problem gelöst :).

vielen Dank

christian

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...