h1

C – Eliminar comentarios

agosto 18, 2007

A veces queremos eliminar los comentarios de un archivo de código fuente en C y no tenemos otra forma que ir borrándolos uno a uno. Si el fichero tiene una extensión considerable puede llegar a ser muy tedioso. ¿Por qué no tener un programa que se encargue de eliminarlos?

 

#include <stdio.h>
#include <string.h>

int main (int argc, char *argv[])
{
    if ( argc != 2){
        printf("Error, parámetros erróneos.\\n");
        printf("Utilice: ./Elimina_comentarios nombre_archivo\\n");
        return 0;
    }
    FILE *fresult;
    FILE *forigin;
    char c, car;
    /* Este programa elimina los comentarios de un archivo de código fuente en C*/

    fresult = fopen("Fichero_sin_comentarios", "w");
    forigin = fopen(argv[1], "r");
    if ( forigin == NULL){
        printf("Error abriendo el fichero\\n");
        return 1;
    }

    while((c=getc(forigin)) != EOF)
    {
        if (c == '/')
        {
            c=getc(forigin);
            if ( c == '/'){
                c=getc(forigin);
                while( c != '\\n')
                    c=getc(forigin);
            }else if(c == '*'){
                c=getc(forigin);
                while (c != '*')
                    c=getc(forigin);
                c=getc(forigin);
                c=getc(forigin);
            }
        }
        putc(c,fresult);
    }
    return 0;
}

Espero que os sea de utilidad. Si encontráis cualquier error o sugerencia comunicádmelo.

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

A %d blogueros les gusta esto: