Im Moment habe ich dies:Wie fopen verwenden, um eine Datei zu öffnen, deren Name vom Benutzer angegeben wurde?
printf("Please enter your file name with\nthe file type then hit enter followed by ctrl+z\nthen enter 1 final time\n");
char tempChar;
int counter = 0;
char fileName[1000];
int boolean1 = 0;
while(boolean1 == 0)
{
tempChar = getchar();
if(tempChar == EOF)
break;
else
fileName[counter] = tempChar;
counter++;
}
wo fileName
der Name der Datei wäre. Dieser Befehl funktioniert, was großartig ist und mir ein char-Array mit dem gewünschten Namen gibt. Ich weiß jedoch nicht, wie ich das an weitergeben soll. Ich habe versucht fopen(fileName, "r");
und ich habe es mit Anführungszeichen über Dateinamen versucht. Ich habe auch versucht fopen("%c",&fileName,"r");
Ich glaube, das passiert wegen der zusätzlichen Müll, der in der 1000-Länge-Zeichen-Array kommt, aber wie kann ich das Problem lösen?
Ich habe die 4-Raum-Sache, um zu spezifizieren, was war Code und was nicht war, aber es wird nicht arbeiten tut mir leid, wenn es wie ein heißes Durcheinander aussieht. –
Fügen Sie der Zeichenfolge eine abschließende Null hinzu, nachdem Sie das letzte Zeichen vom Benutzer gelesen haben. Oder verwenden Sie eine Bibliotheksfunktion, um die Eingabe zu lesen, anstatt Ihre eigene zu schreiben :) – hobbs
Sie möchten weiterlesen, wie C den Datentyp "string" emuliert, da er in dieser Sprache im Allgemeinen und auf '0'-terminierten' char nicht existiert '-arrays insbesondere. – alk