+ Responder ao Tópico



  1. Caros senhores;
    Bom dia.

    Sou novo em C, estou gostando e precisando fazer um pequeno aplicativo. Mas estou com uma dificuldade: fazer a comparação de uma palavra armazenada em um ponteiro com um char ou string, ver este comentário no código:
    //Aqui eu queria fazer a comparação das palavras esplitadas
    //-------------------------------------------------------------------

    Sei que para muitos de vocês isto é muito fácil, mas não para mim que sou novo no mundo C. Peço que se possível, me ajudem e de uma forma que um novato entenda.
    Segue o código abaixo.
    Desde já muito obrigado.

    Código :
    #include <stdio.h>
    #include <string.h>
     
     
    void main()
    {
      FILE *arq;
      char Linha[10024];
      char *result;
      int i;
     
       //Abre o arquivo de log
      arq = fopen("/usr/local/thunder/logs/access.log", "rt");
     
      if (arq == NULL)
      {
        printf("Arquivo nao abriu\n");
        return;
      }
     
      i = 1;
      while (!feof(arq))
      {
        // Le uma linha (inclusive com o '\n')
        result = fgets(Linha, 10024, arq);
        if (result)
        {
          //printf("Linha %d: %s\n",i,Linha);
          //Bloco que separa a linha em palavras (dá um split com espaços em branco)
          char * palavra;
          char * palavras[1024];
     
          int x = 0;
          palavra = strtok(Linha, " ");
          while (palavra!=NULL) {
            palavras[x] = palavra;
            x++;
            palavra = strtok(NULL, " ");
          }
          //Aqui eu queria fazer a comparação das palavras esplitadas
          //-------------------------------------------------------------------
          //printf("%d ",strverscmp(palavras[11],"1"));
          //if ((int)palavras[11]==1)
          //{
          //  printf("%s\n", palavras[5]);
          //}
          //-------------------------------------------------------------------
          //printf("%s\n", palavras[0]);
          //printf("%s\n", palavras[1]);
          //printf("%s\n", palavras[2]);
          //printf("%s\n", palavras[3]);
          //printf("Linha %d: %s\n", i, Linha);
        }
        i++;
      }
      fclose(arq);
    }

  2. Como foi dito acima, use a função strcmp, presente no cabeçalho string.h

    Ex:

    Código :
    if(strcmp(string1, string2))






Tópicos Similares

  1. Envio de email com Apache + PHP + Mysql
    Por Ronin no fórum Servidores de Rede
    Respostas: 13
    Último Post: 22-01-2003, 14:11
  2. Upload de arquivo com PHP
    Por Fly no fórum Linguagens de Programação
    Respostas: 8
    Último Post: 13-12-2002, 16:18
  3. Envio de email com copia automatica no sendmail
    Por dark_exs no fórum Servidores de Rede
    Respostas: 1
    Último Post: 12-12-2002, 12:27
  4. Servidor de Radio com Conectiva 8
    Por no fórum Servidores de Rede
    Respostas: 3
    Último Post: 11-11-2002, 02:17
  5. Performance de Sistemas com WIN98/LINUX-SAMBA
    Por soyeu no fórum Servidores de Rede
    Respostas: 1
    Último Post: 28-03-2002, 21:55

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L