elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  como hacer un contador de lineas de codigo en C
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: como hacer un contador de lineas de codigo en C  (Leído 16,759 veces)
Syscrew

Desconectado Desconectado

Mensajes: 4


Ver Perfil
como hacer un contador de lineas de codigo en C
« en: 2 Junio 2011, 05:48 am »

hola, quieor que me guien en como hacer un contador de lineas de codigo, la verdad si ando bien perdido en eso, no tengo ni la menor idea de como hacerlo, los requerimientos son de que desde un archivo, lo lea y cuente cuantas lineas de codigo tiene, y si se peude, leerse a si mismo y contarse, o leer el .exe que genera el .c

la cosa es que, como hago para leer un archivo y despues que me cuente las lineas, e ignorar los comentarios, como haria ese filtro para que cuando se tope con /* no lo tome en cuenta.

si es para un trabajo escolar, no pido que me hagan el codigo si no que me ayuden a entender como hacerlo ya que hacerle el copy paste pues no aprenderia nada.

espero su ayuda, ya que ando en fase de aprender en serio el mundo de la programacion, y pues empeizo con c por que es lo que me enseñaron en la escuela

gracias


En línea

HeXmiT


Desconectado Desconectado

Mensajes: 323


Ver Perfil
Re: como hacer un contador de lineas de codigo en C
« Respuesta #1 en: 2 Junio 2011, 11:34 am »

Para el tema de los archivos, dale un ojo a esto:
http://c.conclase.net/librerias/?ansifun=fopen

Para el resto del problema, yo lo haria con expresiones regulares.

Necesitas ignorar las lineas que comienzan por // sin necesidad de cierre.
Ignorar las lineas /* hasta encontrar */.

El resto es ir leyendo linea a linea (hasta "endl", \n o como quieras ponerlo..) e ir volcando a otro archivo resultado.


En línea

Syscrew

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: como hacer un contador de lineas de codigo en C
« Respuesta #2 en: 2 Junio 2011, 17:52 pm »

Citar
bueno ya saque el programa que me cuente las lineas de codigo, ahora nesesito sacar algo mas, en C como se identifica un metodo de otro, o clase, auqnue las clases son en orientado a objeto pero no hago eso cual es el equivalente de las clases en C que no sea por orientado a objetos?

ya que lo que nesesito es, identificar cuantas clases tengo y cuantas lineas de codigo hay por dicha clases o metodos

actualizacion bueno ya leeo lineas de codigo, ya lo separe por metodos o funciones ahora me falta un filto para que en metodo 1 me lea cantas lineas de codigo hay luego en metodos cuantas lineas tengo y asi susesivamente, y al final contar el total de lineas.

aqui les dejo lo que llevo


#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main()
{0
header();
clc();

system("PAUSE");
return 0;
}
header()
{
printf("\t\t/*************************************************/\n");   
printf("\t\t/*Program Assignment: #2 */\n");
printf("\t\t/*Name:                                                                       */\n");
printf("\t\t/*2 de junio del 2011 */\n");
printf("\t\t/*Cuenta cuantas lineas de codigo hay e cada                 */\n");
printf("\t\t/*funcion */\n");
printf("\t\t/*************************************************/\n");
}
clc()
{
int contador = 0;
FILE *archivo;
char caracteres[200];
archivo = fopen("contadro de lineas de codigo.c", "r");
while(feof(archivo) == 0)
{
fgets(caracteres,200,archivo);
printf("%s", caracteres);
if(caracteres[0] != '/' && caracteres[1] != '*')
contador++;
if (isspace (caracteres[0]))
contador--;

}
printf("\n Fueron tantas lineas de codigo %d\n", contador);
}
como ven lo estructure, quiero hacer el filtro que cuando lea por ejemplo

el primer metodo o funcion es header(); y yo lo reenombro mtdheader() y despues el otro igual mtdclc() y hago una condicion if que diga que si empeiza con mtd me lo tome como metodo y me cuente las lineas de esa sección luego imprima mtdheader tiene tantas lineas de codigo y despues lo mismo con el mtdclc imprima tiene tantas lineas de codigo y asi susesivamente y al final lineas totles es tanto.

ando en pleno diseño d hacer esa sección
« Última modificación: 6 Junio 2011, 19:55 pm por Syscrew » En línea

Syscrew

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: como hacer un contador de lineas de codigo en C
« Respuesta #3 en: 6 Junio 2011, 20:05 pm »

hola, la verdad, ando dando vueltas con el tema, me que ahi, y no puedo buscar el algoritmo, como mencione quiero que cuando me detecte

main()
{
mtdheader();
mtdclc();
}

como hacer para que, cuando se lea el archivo, cuente mtdheader() lo detecta como mi primer metodo ya que lo detecto brinque a

header()
{
printf("\t\t/*************************************************/\n");   
printf("\t\t/*Program Assignment: #2 */\n");
printf("\t\t/*Name:                                                                       */\n");
printf("\t\t/*2 de junio del 2011 */\n");
printf("\t\t/*Cuenta cuantas lineas de codigo hay e cada                 */\n");
printf("\t\t/*funcion */\n");
printf("\t\t/*************************************************/\n");

y cuente las lineas de codigo que hay, despues, detecte el segundo metodo que seria mtdclc() y brinque a

clc()
{
int contador = 0;
FILE *archivo;
char caracteres[200];
archivo = fopen("contadro de lineas de codigo.c", "r");
while(feof(archivo) == 0)
{
fgets(caracteres,200,archivo);
printf("%s", caracteres);
if(caracteres[0] != '/' && caracteres[1] != '*')
contador++;
if (isspace (caracteres[0]))
contador--;

}
printf("\n Fueron tantas lineas de codigo %d\n", contador);
}

pero que al final me imprima

metodo mtdheader() tiene 9 lineas de codigo
metodo mtdclc() tiene 16 lineas de codigo
lineas totales son 37

lo que me falta es eso que me imprima nombre del emtodo y cuantas lineas tiene
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Como hacer un contador descendente para una maquinita ¿?
Electrónica
Lalooh 1 4,562 Último mensaje 17 Noviembre 2006, 19:49 pm
por BADBYTE-K
Como hacer contador....
PHP
ffabian 7 3,461 Último mensaje 19 Julio 2008, 22:07 pm
por ffabian
contador de lineas logicas de codigo
Java
minerva86 5 20,254 Último mensaje 16 Marzo 2009, 22:30 pm
por Ragnarok
[Soft] Contador de lineas logicas
Programación Visual Basic
79137913 6 4,249 Último mensaje 7 Junio 2011, 14:25 pm
por 79137913
Como hacer un codigo para una protoboard?
Programación C/C++
kosmos001 1 2,673 Último mensaje 7 Junio 2012, 05:12 am
por caldera_titin
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines