Ir para conteúdo
Fórum Script Brasil
  • 0

contador de caracteres de um texto


Efemero

Pergunta

Olá!

Bom dia a todos.

Estou com uma duvida sobre como fazer um contador de carcteres para um arquivo de texto. O codigo que segue abaixo está dando erro. Alguém pode me ajudar?

int contFreq(FILE *arq){

int tabela[256];

int i = 0;

int ch;

for(i = 0; i <256; i++){

tabela = 0;

}

while(ch = fgetc(arq) > 0){

tabela[ch]++;

}

return tabela;

Desde já obrigado.

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Olá Efemero,

A linguagem C tem algumas funções pra manipular arquivos que podem te ajudar, só depende do propósito desejado.

Com essas duas funções você consegue de maneira muito simples obter a quantidade exata de bytes num arquivo.

int fseek( FILE *stream, long offset, int origin );

long ftell( FILE *stream );

Se tiver dificuldades pra usar posta as duvidas ai ok.

Abs

Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado, mas esta função que estou querendo fazer, é na verdade para contar com que frequência aparece cada caractere em um arquivo de texto, para posteriormente comprimir esse arquivo de texto com código de Huffman, e não para determinar o tamanho em bytes.

Link para o comentário
Compartilhar em outros sites

  • 0

Opa, desculpa ai então.

Tenta esse código como base.


#include <stdio.h>
#include <mem.h>

void main(void)
{
FILE *fp = fopen("teste.txt", "rt");
unsigned char ch;
unsigned char tabela[256];
memset(&tabela, 0, sizeof(tabela));
while (feof(fp) == 0)
if (ch = fgetc(fp))
tabela[ch]++;
printf("Fim\n");

for(int n = 0; n < 256; n++)
printf("%03d ", tabela[n]);
fclose(fp);
}
[/codebox]

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...