1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

[c] erro

Discussão em 'Programação' iniciada por Ruanes, 20 de Julho de 2008. (Respostas: 0; Visualizações: 406)

  1. Ruanes

    Ruanes Power Member

    Oi, estou a tentar fazer um programa de (uma especie) cifragem e decifragem

    o problema é que o compilador nao dá erros mas o certo é que os há.

    O que eu quero que o programa faça é o seguinte:

    O usuario escreve o nome do programa + um parametro (-c para cifrar e -d para decifrar) + o nome do ficheiro.
    depois o programa cria um ficheiro onde será inserido o outro ficheiro (de)cifrado.

    aqui vai o codigo que tenho quase a certeza que é onde esta o erro(s).
    Código:
    for (i=0;i<pos;i++)
      nameof[i]=argv[2][i];
     strcat(nome,nameof);
     if (stricmp(argv[1],CIFRA)==0)
      strcat(nome," CODIFICADO");
     else if (stricmp(argv[1],DECIFRA)==0)
      strcat(nome," DESCODIFICADO");
     strcat(nome,".");
     strcat(nome,extensao);
     //Cria o ficheiro paralelo
     if ((pa=fopen(nome,"wb"))==0)
     {
     printf("Erro");
     exit(8);
     }
     //inicio do processo de cifragem
     if (stricmp(argv[1],CIFRA)==0)
      //Enquanto nao chegar ao fim...
      while ((ch=fgetc(fp))!=EOF)
       //Compara o caractere com os da lista...
       for (i=0;i<256;i++)
        //Se for igual...
        if (ncode[i]==ch)
         //Coloca o caractere correspondente á lista codificada
         fputc(code[i],pa);
     else
      while ((ch=fgetc(fp))!=EOF)
       for (i=0;i<256;i++)
        if (code[i]==ch)
         fputc(ncode[i],pa);
     printf("Completo");
     fclose(fp);
     fclose(pa);
    }
    o problema é que o ficheiro nao é criado.
     
    Última edição: 20 de Julho de 2008

Partilhar esta Página