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

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

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...