Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallöchen Leute...

Ich hab mal wieder ein Problem und hoffe das ihr mir ein wenig weiter helfen könnt... Also ich soll ein Programm schreiben das eine vorhandene Datei öffnet und diese dann in einer anderen Datei die man in dem Programm erzeugt abspeichert... Das ganze soll Zeilenweise passieren. Diesen Teil des Programms hab ich auch bestens hin bekommen. Was mir absolute probleme macht ist das die Kommentare beim auslesen der vorhanden Datei gelöscht werden sollen und dann die Datei Speichern der neuen Datei... Das schwierige für mich is halt auch das er jede art von kommentaren finden soll... welche die mit // beginnen und somit nur eine Zeile lang sind, aber auch /*kommentar*/ diese art die sich über mehrere Zeilen ziehen kann...

ich schreib euch ma den quellcode und evt kann mir ja jemand weiter helfen... Bin für jede hilfe dankbar...

/*******************************************************

* Created from :  Sabrina Werner

* Created at   :  23.01.2008

* Updated at   :  24.01.2008

*

* Description  : Kapitel 1, Aufgabe von Stephan

*                

*Schreiben Sie ein Programm, das C- Programmen kopiert und unter 

*einem anderen namen speichert. Es soll im anschluss die kommentare entfernen.

* ********************************************************/


#include <stdio.h>


int main (void)

{

    /*

    Deklaration  FILE-Zeiger

    */

    FILE *fQuelle;

    FILE *fZiel;


    /*

    Deklaration der Variablen

    */

    int iZaehler;

    char sZeile[80];

    char sAusgabe[80];

    int iPos;

    int iAusgabenZaehler;


    /*

    Zuordnung der Werte

    */

    iZaehler = 0;

    iPos = 0;

    iAusgabenZaehler = 0;




    /*

    öffnen der Datei

    */

    fQuelle = fopen("C:\\Kernig~1\\Lookup\\test.c", "r");

    fZiel = fopen("C:\\Kernig~1\\Lookup\\Ziel.c", "w");



    /*

    Überprüfung ob die Datei geöffnet werden kann

    */

    if (fQuelle == NULL)

    {

        printf("Fehler beim Oeffnen der Datei C:\\Kernig~1\\Lookup\\test.c\n");

    }

    else 

    {

        printf("Datei erfolgreich geoeffnet.\n");

    }



    /*

    Überprüfung ob die neue Datei erstellt werden konnte

    */

    if (fZiel == NULL)

    {

        printf ("Fehler beim Oeffnen der Datei C:\\Kernig~1\\Lookup\\Ziel.c\n");

    }

    else

    {

        printf ("Datei erfolgreich geoeffnet\n");

    }    



    /*

    Durchlaufen der Schleife bis die Datei zu ende ist. Übergabe der Daten aus 

    fQuelle nach fZeile...

    */

    while(fgets(sZeile, 80, fQuelle) != NULL)

    {


        /*

        Finden der Kommentare

        */

        while (sZeile[iZaehler] != '\n')

        {

            if (sZeile[iZaehler] == '/' || sZeile[iZaehler] == '*')    

            {

                ++iZaehler;

                if (sZeile[iZaehler] == '*' || sZeile[iZaehler] == '/')

                {

                    iPos = iZaehler -1;

                }

            }


            /*

            Weg lassen de Kommentare

            */

            if (sZeile[iZaehler] != '/' || sZeile[iZaehler] != '*')

            { 

                sAusgabe[iAusgabenZaehler] = sZeile[iZaehler];

                ++iAusgabenZaehler;

                ++iZaehler;

            }    

        }

        /*

        Ausgabe der Zeichenkette in der gewünschten Datei

        */     

        fputs (sZeile, fZiel);



        iZaehler = 0;

    }



    /*

    Schließung der Dateien

    */

    fclose(fQuelle);

    fclose (fZiel);



    return 0;


}

Geschrieben

das problem daran is nur das ich nur die funktionen nehmen darf die ich schon kenne... bin im ersten kapitel von Programmieren in C... also arg viele kenn ich noch nicht... Soll das mit while und if usw machen...

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