Pessoal ainda sou novato na área de desenvolvimento (2º Semestre), estou com um problema aqui que esta me deixando meio doido, descrição do problema:
Criar um programa em C que abra um arquivo .txt contendo um cód em c++ e mostre o número de linhas do código que são comentários formatados segundo a sintaxe da Linguagem C/C++. A sintaxe prevê dois tipos de comentários: linha única começando com os caracteres “//” (barra, barra); e comentários multi-linhas começando com “/*” (barra, asterisco) e com término determinado por “*/” (asterisco, barra).
Cheguei a seguinte lógica:
=========================================
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main ()
{
FILE * pFile;
int c;
int n = 0;
pFile = fopen ("ArquivoTexto.txt", "r");
if (pFile !=NULL)
{
do
{
c = fgetc(pFile);
if (c =='/') n++;
}
while (c != EOF);
fclose(pFile);
printf("Numero de Comentarios = %d.\n", n);
}
system("PAUSE>>null");
return 0;
// 1º Comentário
// 2º Comentário
// 3º Comentário
// 4º Comentário
/* 5º Comentário */
// 6º Comentário
}
=========================================
Esta compilando certo porém ele mostra o total de "/" que aparece no texto por exemplo se fosse ler esse código ai acima teria que mostrar 6 comentários porém esta mostrando 13 ou seja 13 "/", se eu fizer a qtd total de "/" encontradas dividido por 2 também não confere pois o programa lê todos as barras inclusive a do sinal de dividir.
Teria que ser feito uma maneira de que cada vez que o caracter "/" aparecer seguido de outra "/" ou seja "//" incremente o contador mas não consigo achar uma maneira de resolver isso.
Gostaria de alguma dica, estou a 2 semanas tentando resolver e nada, por favor me ajudem pelo menos a contar os comentários simples "//" ai depois tentarei através desse problema tentar contar também os comentários multi-linhas "/* */" .
Pergunta
FabioArgenton
Pessoal ainda sou novato na área de desenvolvimento (2º Semestre), estou com um problema aqui que esta me deixando meio doido, descrição do problema:
Criar um programa em C que abra um arquivo .txt contendo um cód em c++ e mostre o número de linhas do código que são comentários formatados segundo a sintaxe da Linguagem C/C++. A sintaxe prevê dois tipos de comentários: linha única começando com os caracteres “//” (barra, barra); e comentários multi-linhas começando com “/*” (barra, asterisco) e com término determinado por “*/” (asterisco, barra).
Cheguei a seguinte lógica:
=========================================
=========================================
Esta compilando certo porém ele mostra o total de "/" que aparece no texto por exemplo se fosse ler esse código ai acima teria que mostrar 6 comentários porém esta mostrando 13 ou seja 13 "/", se eu fizer a qtd total de "/" encontradas dividido por 2 também não confere pois o programa lê todos as barras inclusive a do sinal de dividir.
Teria que ser feito uma maneira de que cada vez que o caracter "/" aparecer seguido de outra "/" ou seja "//" incremente o contador mas não consigo achar uma maneira de resolver isso.
Gostaria de alguma dica, estou a 2 semanas tentando resolver e nada, por favor me ajudem pelo menos a contar os comentários simples "//" ai depois tentarei através desse problema tentar contar também os comentários multi-linhas "/* */" .
Valeu pessoal....
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.