Pomôžte s programom v C
Re: Pomôžte s programom v C
potrebujem pomôcť s týmto programom neviem spraviť to aby mi zo súboru vložilo do 1 pola len čísla a do toho druhého len písmena ak dám fscanf %d tak mi to načíta len prvé číslo a ak dám %c tak mi načítava všetko aj s enterom aj medzery za pomoc vopred ďakujem
Re: Pomôžte s programom v C
dimo: tá funkcia preloz berie ako parameter int kluc[26][2], takže ten kľúč máš ukladať do dvojrozmerného poľa, písmená bude asi najlepšie ukladať ako ich ordinálnu hodnotu
Re: Pomôžte s programom v C
ok veď to by som už nejako spravil akurát neviem ako zapísať len čísla a potom len písmena a vynechávať medzery a entery a "Ordinalna hodnota" je čo?
-
harrison314
Hardcore addict
- Príspevky: 8223
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: Pomôžte s programom v C
nacitavaj to nejak takto:
Tym sa vyhnes tomu aby ti cistalo biele znaky
Kód: Vybrať všetko
void nacitajRiadok(FILE* f,int* cislo, int *znak)
{
fscanf(f,"%d",cislo);
char buffer[5]; //poriadna rezerva
fscanf(f,"%s",buffer);
*znak = (int) buffer[0];
}
Re: Pomôžte s programom v C
//upravene. Uz nic.
-
harrison314
Hardcore addict
- Príspevky: 8223
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: Pomôžte s programom v C
Nie nezostanu, tu moju funkciu zavola 26-krat a subor sa precita dokonca, pri jeho zavreti sa prostriedky systemu uvolnia.pcsiete napísal:Neostanu potom v systemovom bufferi? A nezoberu sa do '%s'? To by mozno trebalo nacitat subor a potom strtok na kazdy riadok. Az tak tato funkcia.
Medzera sa tam nezoberie, %s necita biele znaky.
Re: Pomôžte s programom v C
Ok ďakujem