Hirdetés

Új hozzászólás Aktív témák

  • dobragab
    addikt

    Nem tudom működésre bírni. :(
    Eddig csak úgy ment, hogy a fő struktúrán kívül is deklaráltam illetve extern taggal kivittem másik fájlba, de akkor szerintem az nem ugyanaz a változó volt mint a struktúrában lévő. Egyébként eeprom-ba íráshoz kellene, hogy a struktúrában lévő elemeket egy függvényhívással be tudjam írni, ne kelljen minden elemnél külön meghívni az eeprom-ba író függvényt.

    emp.doj egy három elemű tömb, amit inicializálni csak akkor tudsz, amikor létrehozod az emp változót.

    Employee emp = {
    "John Sample", 0, 2500,
    {1, 1, 1970},
    {1, 1, 1970},
    {1, 1, 1970}
    };

    Külön inicializálni már nem tudod, csak értéket adhatsz neki. Illetve nem is neki, mert C-ben nincs tömbök közötti értékadás, hanem az elemeinek, mégpedig egy létező dátumot:

    date date0 = {1, 1, 1970};

    Ezután adhatsz értéket az emp.doj elemeinek.

    emp.doj[0] = date0;
    emp.doj[1] = date0;
    emp.doj[2] = date0;

    Itt segítségedre lehet a C99 compound literal:
    emp.doj[0] = (date){1, 1, 1970};

    Ha kinullázni szeretnéd egy struktúra adattagjait, akkor ez nem szabványos, normális fordító nem eszi meg:
    date date0 = {};

    Ez viszont igen:
    date date0 = {0};

Új hozzászólás Aktív témák