Eliminar comentarios de un fichero

Manuel García

/* Este programa lee un programa escrito en C de un fichero, y lo copia en otro fichero eliminando los comentarios */

#include<stdio.h>
#include<stdlib.h>

int main()

{
    FILE *f, *g;

    char fich1[100], fich2[100], c;

    printf(“Dame el nombre del fichero donde este el programa: “);
    gets(fich1);
    f=fopen(fich1,”r”);

    printf(“Dame el nombre del fichero resultado: “);
    gets(fich2);
    g=fopen(fich2,”w”);

    while (!feof(f))
    {
        fscanf(f,”%c”,&c);
        if (c==’/’)
        {
            fscanf(f,”%c”,&c);
            if (c==’*’)
            {
                fscanf(f,”%c”,&c);
                etiqueta: while (c!=’*’)
                fscanf(f,”%c”,&c);

                fscanf(f,”%c”,&c);
                if (c!=’/’)
                goto etiqueta;
            }

            else if (c==’/’)
            {fscanf(f,”%c”,&c);
             while (c!=’\n’)
             fscanf(f,”%c”,&c);}

            else
            fprintf(g,”/%c”,c);
        }

        else
        fprintf(g,”%c”,c);
    }

    fclose(f);
    fclose(g);

    system(“pause”);
    return 0;
}

Esta entrada fue publicada en Informática e Internet. Guarda el enlace permanente.

Una respuesta a Eliminar comentarios de un fichero

  1. good!..
    (una mejora interesante sería eliminar el ‘goto’ del código).

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s