Uusi struct

Liian vaikeeta

Moi

Mulla on

struct autoItem (
char *nro;
char *moottori;
char *nopeus;
char *kulutus;
.
.
.
)

Haen tiedot autot.csv tiedostosta. Nyt vaan pitäis luoda haetusta rivistä olio, jotenkin näin

struct autoItem *createautoItem (char *s)
(
struct autoItem *pvw;
pvw = new struct autoItem;

//tämä homma sitten mättää, miten se täytetään rivin (line) tiedoilla, kun kaikissa kohdissa ei välttämättä ole tietoa eli
234;tehokas;;nopea.... Eli nuo pitäisi jotenkin tutkia. Ilmeisesti siinä voisi käyttää strdup ja strtok apuna. Mutta vääntäkää nyt joku rautalangasta, miten se tehdään.

//koodi jatkuu
pvw->nro = ...

return pvw;
)

1

543

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • hemmoit

      tarkista että rivi on validi ';' merkkien määrä
      char *nro = strtok(rivi,";");
      char *mootori = strtok(NULL,";"); /* Huomaa NULL */
      ....

      pvw = (struct autoItem *)calloc(1,sizeof(struct autoItem)); /* imho, Älä käytä new operaatoria jos et oikeasti tee C koodia */

      pvw->nro = strdup(nro);
      ...

      ;; välin pitäsi näkyä arvona jonka pituus on 0.

      Huomaa että tuossa on monta osoitinta ja muistin varausta, eli ennen kun vapautat autoItemin joudut vapautamaan jäsenet (tee vaikka freeAuto funktio tai makro) ja tarkista muistin varausten onnistuminen.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Maahanmuuttajien vaikutus Suomen valtiontalouteen positiivinen

      Maahanmuuttajat maksavat enemmän tuloveroja kuin saavat tulonsiirtoja. Eroavat persuista tässä suhteessa. Persuista o
      Maailman menoa
      318
      4617
    2. Olen Päivi Räsäsen puolella

      En oe uskovainen enkä kristillisdemograattikaan mutta onhan tuo naurettavaa laittaa Päivi syylliseksi omasta mielipit
      Maailman menoa
      372
      2716
    3. Ukrainan tiedustelun huippupotti - Iski ensin yhteen satamaan, sitten toiseen

      Ukrainan tiedustelupalvelu SBU kertoo johtaneensa operaatiota, jossa on isketty drooneilla Venäjän tärkeimpiin satamiin
      Maailman menoa
      130
      2539
    4. Ulkomaalaistaustaiset tulevat kalliiksi yhteiskunnalle.

      Selvitys: Ulkomaalaistaustaiset saivat selvästi enemmän työttömyysetuuksia ja toimeentulotukea kuin suomalaistaustaiset.
      Maailman menoa
      176
      2445
    5. Nuhteettomia edustajia

      Korkein oikeus tuomitsi Päivi Räsäsen kiihottamisesta kansanryhmää vastaan Kansanedustaja Päivi Räsästä (kd.) vastaan no
      Politiikka
      211
      2375
    6. Päivi Räsänen tuomittiin rikoksesta...

      ...kiihottamisesta kansanryhmää vastaan. Tuskin tajuaa silti vieläkään, että raamattu ei ole lakikirja. https://yle.fi/a
      Maailman menoa
      529
      1348
    7. Korkein oikeus antaa Räsäselle vastauksen klo 9. Varmaan vapautus

      Miten veikkaat että Päiville käypi? Päivi pitää lehdistökonferenssin klo 9.30. Koko media on läsnä. 7 v taistelu on ohii
      Luterilaisuus
      436
      1247
    8. Huumeliika mellastaa Suomussalmella

      Varastanut S-marketissa, jopa kolme kertaa päivässä. Päätekijä pitänyt kuumeorjanaan naistaan useita vuosia. Mies potki
      Suomussalmi
      12
      1181
    9. Ihana sinä (m)

      Oispa kiva nähdä sua. Uskomatonta, miten paljon sä pyörit mun ajatuksissa. Oonkohan mä sun mielessä? Haluaisitko nähdä v
      Ikävä
      38
      973
    10. Oletko koskaan miettinyt

      kun sua ei kukaan puolusta missään tilanteessa? Eikö ole omituista?
      Viha
      94
      969
    Aihe