Olen tekemässä erästä koulutyötä ja ongelmani on seuraava:
1. En saa osaa liittää txt tiedostosta luettuja arvoja ohjelmaani oikealla tavalla.
2. Saan kuitenkin normaalisti liitettyä lukuja ohjelmaani
Ohessa koodia:
main()
{
bool ht_inc;
int info ;
int choice;
struct node *root = (struct node *)malloc(sizeof(struct node));
root = NULL;
FILE* fp;
char buffer[100];
int count = 0;
TÄMÄ EI TOIMI
printf("Opening file..\n");
fp = fopen("my.txt", "r");
while (fgets(buffer, 100, fp) != NULL) // MITEN SAAN BUFFERIIN LUETUT TIEDOT SIIRRETTYÄ INFOON ??
{ // JA MIELELLÄÄN JOS JOKU SELITTÄÄ TUON IHAN KOODILLA
if( search(root,info) == NULL )
root = insert(info, root, &ht_inc);
else
printf("Duplicate value ignored\n");
count ;
}
fclose(fp);
TÄMÄ KYLLÄ TOIMII
printf("Enter the value to be inserted : ");
scanf("%d", &info);
if( search(root,info) == NULL )
root = insert(info, root, &ht_inc);
else
printf("Duplicate value ignored\n");
APUA KAIVATAAN TIEDOSTON KÄSITTELYYN
3
498
Vastaukset
- Vinkki-Petteri
Vinkki1:
buffer on char-taulukko ja info on int, eli jotain tarttis tehdä.
Vinkki2:
fscanf tai sscanf auttanee (en nyt muista tarkkaan). - Vinkki-Petteri
Pitipä ihan kokeilla eli näin helposti onnistuu fscanf-jutulla integerin luku:
int main ()
{
int num;
FILE * filep;
filep = fopen ("myfile.txt","r");
while (fscanf( filep, "%d", &num) == 1) {
printf ("%d\n", num);
}
fclose (filep);
return 0;
}
Ehto on == 1, koska fscanf palauttaa onnistuneiden skannauksien lukumäärän (jolloin tiedosto voi sisältää ylimääräistä 'roskaa' vaikkapa tekstiä).- Copettelija
Mun pitää kokeilla että miten tuo toimii ns. käytännössä :)
Mut kyselen lisää jos en saa toimimaan..kiitos kuitenkin neuvostasi
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Suomen kansa haluaa Antti Lindtmanista pääministerin
Lindtman on miltei tuplasti suositumpi kuin etunimikaimansa Kaikkonen. Näin kertoo porvarimedian teettämä kysely. http2434223Vain 21% kannattaa Lindtmania pääministeriksi
se on selvästi vähemmän kuin puolueen kannatus, mites nyt noin?1182681Miten löydän sinut
Ja saan sanottua kaiken mitä haluan sinulle kertoa? Ja kuinka kuuntelisit minua sen hetken? Kuinka voin ilmaista sen mit412432Yöllinen autolla kaahari Heinolan seudulla
Asukkaita häiriköivän nuoren herran autokaahaus keskustelu poistettu, onko jokin hyvävelijärjestelmä käytössä ?821477Vaikea tilanne
Hieman kolkuttaa omatuntoa, kun on osoittanut kiinnostusta väärää naista kohtaan. En ymmärrä miten toinen on voinut te1161466- 481189
- 781107
- 59983
- 45976
Julkinen sektori on elänyt aivan liian leveästi yli varojensa!
Viimeisen 15 vuoden aikana julkisen puolen palkat ovat nousseet n. 40%, kun taas yksitysellä sektorilla vain n. 20%. En171951