Hiho erstmal, ich hab ein kleines Problem mit einem C-Programm.
Also die Aufgabe vom Programm sieht erstmal wie folgt aus:
Schreiben Sie ein Programm expand, das als Kommandozeilenparameter einen Dateinamen erwartet. Der Inhalt dieser Datei soll zur Standardausgabe kopiert werden. Dabei ist aber jeder Tabulator (in C dargestellt durch '\t') in die entsprechende Anzahl Leerzeichen umzuwandeln.
Wird kein Dateiname angegeben, ist die Standardeingabe als Eingabe zu verwenden.
Mein programm kann die Datei lesen und den text auch ausgeben allerdings bräuchte ich jetzt noch etwas was den textchar durchsucht und die \t die im text eingetippt sind in die entsprechende escapesequenz umgewandelt werden. Das suchen würde ich warscheinlich noch hinbekommen (dafür haben wir früher mal ein programm geschrieben) allerdings habe ich keine ahnung wie ich den text dann gegen die Escapesequenz auswechseln kann.
Mein Programm:
#include<stdio.h>
main(int argc,char *argv [] ){
int a;
char text[100] ;
FILE *dateiptr;
if (argc<2)
printf("Es fehlt der Dateiname");
else{
dateiptr=fopen(argv[2],"r");
if (dateiptr!=NULL) {
printf("\nDatei ist vorhanden und wurde geoeffnet\n");
fscanf (dateiptr, "%100c", text);
printf("%s",text);
}
else
printf("%s",argv[2]);
}
}
Ein weiteres problem ist noch wenn ich den Text ausgebe kommen danach noch ein paar komische für mich nicht zuzuordnende buchstaben.
Wenn jmd mir helfen kann wär ich dankbar!
Also die Aufgabe vom Programm sieht erstmal wie folgt aus:
Schreiben Sie ein Programm expand, das als Kommandozeilenparameter einen Dateinamen erwartet. Der Inhalt dieser Datei soll zur Standardausgabe kopiert werden. Dabei ist aber jeder Tabulator (in C dargestellt durch '\t') in die entsprechende Anzahl Leerzeichen umzuwandeln.
Wird kein Dateiname angegeben, ist die Standardeingabe als Eingabe zu verwenden.
Mein programm kann die Datei lesen und den text auch ausgeben allerdings bräuchte ich jetzt noch etwas was den textchar durchsucht und die \t die im text eingetippt sind in die entsprechende escapesequenz umgewandelt werden. Das suchen würde ich warscheinlich noch hinbekommen (dafür haben wir früher mal ein programm geschrieben) allerdings habe ich keine ahnung wie ich den text dann gegen die Escapesequenz auswechseln kann.
Mein Programm:
#include<stdio.h>
main(int argc,char *argv [] ){
int a;
char text[100] ;
FILE *dateiptr;
if (argc<2)
printf("Es fehlt der Dateiname");
else{
dateiptr=fopen(argv[2],"r");
if (dateiptr!=NULL) {
printf("\nDatei ist vorhanden und wurde geoeffnet\n");
fscanf (dateiptr, "%100c", text);
printf("%s",text);
}
else
printf("%s",argv[2]);
}
}
Ein weiteres problem ist noch wenn ich den Text ausgebe kommen danach noch ein paar komische für mich nicht zuzuordnende buchstaben.
Wenn jmd mir helfen kann wär ich dankbar!