well, let me describe i need to convert my CONTADOR (int) to a char, CONTADOR starts in 0 and terminate in 512, take a look in my program e if possible help me...
sorry by my english...
Code:#include <stdio.h> #include <stdlib.h> #include <conio.c> int compara(char* a, char* b); int main(){ char ENTRADA[50], SAIDA1[50], SAIDA2[50], NOMES[512][80]; FILE *LER; FILE *ESCREVER2; FILE *ESCREVER1; int CONTADOR=0, AUX; puts("informe o nome do arquivo de entrada sem extensao(ex. arquivo)"); gets(ENTRADA); puts("informe o nome do arquivo de saida sem extensao(ex. arquivo)"); gets(SAIDA1); strcat(ENTRADA, ".bin"); strcpy(SAIDA2,SAIDA1); strcat(SAIDA1, "a-n.bin"); strcat(SAIDA2, "p-z.bin"); if ((((LER = fopen(ENTRADA,"rb")) == NULL)||((ESCREVER1 = fopen(SAIDA1,"wb")) == NULL))||((ESCREVER2 = fopen(SAIDA2,"wb")) == NULL)) { puts("Arquivo nao pode ser aberto."); } else{ do{ fread(NOMES[CONTADOR+1], sizeof(NOMES[CONTADOR]), 1, LER); strcat(NOMES[CONTADOR], " sequencial: "); strcat(NOMES[CONTADOR], CONTADOR); }while(!(feof(LER))); fclose(LER); qsort(NOMES, CONTADOR, 80, compara); // veja mais dessa função em: http://www.phim.unibe.ch/comp_doc/c_manual/C/FUNCTIONS/qsort.html (biblioteca STDLIB.H) for(AUX=0;AUX<=CONTADOR, AUX++){ if(((NOMES[AUX][0]>='A')&&(NOMES[AUX][0]<='N'))||((NOMES[AUX][0]>='a')&&(NOMES[AUX][0]<='n')){ fwrite(NOMES[AUX], 80, 1, SAIDA1); } else{ fwrite(NOMES[AUX], 80, 1, SAIDA2); } } } } int compara(char *a, char *b) { return(strcmp(a, b)); }



LinkBack URL
About LinkBacks


