parse.c

Programmi jooksutamise tulemus:

Tegelik pilt mälust:

Kommmentaare argc ja argv kasutamisest:

  • Olenevat programmeerijast võidakse kirjutada *argv[] või **argv. Praktikas tähendavad need sama asja.
  • Kui plaanis pole argumente vastu võtta, siis jätta main endisele kujule, st int main(void)
  • argc (argument count) on argv esimese dimensiooni pikkus. St mitu argumenti anti kaasa programmi käivitusel koos programmi nimega.
  • argc on alati 1 või suurem. 1 on ta olukorras, kus programm käivitati täiendavaid argumente kasutamata.
  • argv (argument vector) sisaldab kõiki kaasa antud parameetreid ja programmi nime käivitamise hetkel.
  • argv[0] sisaldab faili (programmi) nime, mis just käivitati
  • argv[i] on viide i-nda stringi algusele. St argv[3] oleks käsurealt antud neljanda stringi algus, mis ülevaloleva näite puhul oleks olnud “Sonum”
  • Kuna tegu on stringidega, st tekstimassiividega, siis argv[i] pikkuse ehk tähemärkide arvu saame kergesti kätte kasutades strlen funktsiooni.

Näiteks oleme senini antud omadusi kasutanud igapäevaselt oma faile kompileerides. Selleks, et kompileerida minuprogramm.c käivitati järgnev rida:

Antud juhul oleks argc pikkus 5. Käivitatav programmi nimi oleks gcc, kusjuures argv[0] oleks samuti olnud seega gcc.

Edasiselt selleks, et kompilaator oma tööd teha saaks peab ta teadma mida kompileerida, milleks kompileerida, kuidas seda teha ning mis täiendavaid käske tuleb täita. Antud juhul:

  • -o minuprogramm: 2 argumenti, -o ütleb kompilaatorile, et järgmine string on väljundprogrammi nimi
  • -Wall: kuva kõik vaikimisi veateated mis kompileerimisel tekivad
  • minuprogramm.c: lähtefail mida kompileerida tuleb

See loetelu pole lõplik, st gcc oskab veel niimõndagi. Kui huvi, siis võib terminali kirjutada man gcc