Celková koncepce programu

Parametry a návratová hodnota funkce main

Funkce main může mít žádný nebo dva formální parametry.

Tyto parametry jsou většinou označovány argc (parametr typu int) a argv (typu pole textových řetězců). Definice hlavní funkce má tedy obvykle tvar

int main(int argc, char* argv[]){
  ...
  return EXIT_SUCCESS;//==0
}
int main(void) {
  return EXIT_FAILURE;// !=0
}

Podobně jako jiné funkce má i main svou návratovou hodnotu (typu int), kterou může zpracovávat program (většinou OS), který náš program spustil (a tím jakoby volal naši hlavní funkci).

Předání parametrů funkci main

Parametry je možné hlavní funkci předat při spuštění programu z příkazové řádky (terminálu apod.) tím, že je napíšeme za název spustitelného souboru oddělené mezerami. Do parametru argc se uloží počet textových řetězců a do pole argv pak jednotlivé textové řetězce. Zde je nutné si uvedomit, že argv[0] je textový řetězec odpovídající spouštěnému programu (např. “xpm2eps.exe”), vlastní parametry tedy následují až na dalších indexech v poli.

  • hodnota argc odpovídá počtů textových řetězců v poli argv.
  • argv[argc] obsahuje NULL

Příklad:

./xpm2eps -f *.xpm -o *.eps -by 10 (GNU/Linux)
xpm2eps.exe -f *.xpm -o *.eps -by 10 (MS Windows)

Pro konverzi textových řetězců na čísla lze použít funkce 3/atoi a 3/atof definované v knihovně stdlib.h. Příklad:

int pocet;
double cislo;
...
pocet = atoi(argv[1]);
cislo = atof(argv[2]);

Praxe

h0nza: pro mne celková koncepce představuje toto:

  • rozdělení programu na moduly
  • monolitický program nebo knihovna/y + main modul/y
  • privatní a public .h soubory

—- cc, upol

jazykc/celkova-koncepce-programu.txt · Last modified: 2014/12/03 23:01 (external edit)
CC Attribution-Noncommercial-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0