System (jazyk C): Rozdiel medzi revíziami
d |
|||
Riadok 12: | Riadok 12: | ||
</source> | </source> | ||
− | + | ==Podrobný popis funkcie== | |
− | Funkcia system spustí systémový príkaz, alebo externý program. Akonáhle vykonanie príkazu ukončené, procesor vráti kontrolu nad programom späť do programu a vráti hodnotu (zvyčajne int), s ktorou skončil volaný program. | + | Funkcia system spustí systémový príkaz, alebo externý program. Akonáhle vykonanie príkazu ukončené, procesor vráti kontrolu nad programom späť do programu a vráti hodnotu (zvyčajne ''int''), s ktorou skončil volaný program. |
− | Pri použití hodnoty argumentu funkcie NULL môžeme zistiť, či máme k dispozícii procesor príkazov. | + | Pri použití hodnoty argumentu funkcie ''NULL'' môžeme zistiť, či máme k dispozícii procesor príkazov. |
− | + | ==Parametre== | |
;command:Reťazec určujúci ktorý príkaz sa má vykonať. | ;command:Reťazec určujúci ktorý príkaz sa má vykonať. | ||
===Návratová hodnota=== | ===Návratová hodnota=== | ||
− | Návratová hodnota v prípade, že argument nie je NULL závisí od prostredia v ktorom je program spustený (Win, Unix, ...) | + | Návratová hodnota v prípade, že argument nie je ''NULL'' závisí od prostredia v ktorom je program spustený (Win, Unix, ...) |
Vo viacerých systémoch je hodnota 0 použitá v prípade ak sa požadovaná akcia skončila úspechom. Pre indikáciu chyby sú použité hodnoty rôzne od 0. | Vo viacerých systémoch je hodnota 0 použitá v prípade ak sa požadovaná akcia skončila úspechom. Pre indikáciu chyby sú použité hodnoty rôzne od 0. | ||
− | Ak je argument NULL, funkcia vráti nenulovú hodnotu v prípade ak je procesor príkazov k dispozícii. V prípade ak nie je k dispozícii vráti hodnotu 0. | + | Ak je argument ''NULL'', funkcia vráti nenulovú hodnotu v prípade ak je procesor príkazov k dispozícii. V prípade ak nie je k dispozícii vráti hodnotu 0. |
− | + | ==Príklad== | |
<source lang="c" line> | <source lang="c" line> | ||
− | |||
#include <stdio.h> | #include <stdio.h> | ||
#include <stdlib.h> | #include <stdlib.h> | ||
− | int main () | + | int main() |
{ | { | ||
− | + | int i; | |
− | + | printf("Kontrola dostupnosti procesora..."); | |
− | + | if (system(NULL)) puts("OK"); | |
− | + | else exit(1); | |
− | + | printf("Vykonavanie prikazu DIR...\n"); | |
− | + | i = system("dir"); | |
− | + | printf("Vratena hodnota je: %d.\n", i); | |
− | + | return 0; | |
} | } | ||
</source> | </source> | ||
− | + | ==Referencie== | |
* http://www.cplusplus.com/reference/clibrary/cstdlib/system/ | * http://www.cplusplus.com/reference/clibrary/cstdlib/system/ |
Verzia zo dňa a času 00:25, 1. máj 2020
<ctype.h> | <limits.h> | <stdio.h> | <stdlib.h> | <math.h> | <string.h> | <time.h> |
---|---|---|---|---|---|---|
isalnum |
printf |
system |
Funkcia system
knižnica | stdlib.h |
popis | spustí externý program |
Úplný funkčný prototyp:
int system (const char * command);
Podrobný popis funkcie
Funkcia system spustí systémový príkaz, alebo externý program. Akonáhle vykonanie príkazu ukončené, procesor vráti kontrolu nad programom späť do programu a vráti hodnotu (zvyčajne int), s ktorou skončil volaný program.
Pri použití hodnoty argumentu funkcie NULL môžeme zistiť, či máme k dispozícii procesor príkazov.
Parametre
- command
- Reťazec určujúci ktorý príkaz sa má vykonať.
Návratová hodnota
Návratová hodnota v prípade, že argument nie je NULL závisí od prostredia v ktorom je program spustený (Win, Unix, ...) Vo viacerých systémoch je hodnota 0 použitá v prípade ak sa požadovaná akcia skončila úspechom. Pre indikáciu chyby sú použité hodnoty rôzne od 0. Ak je argument NULL, funkcia vráti nenulovú hodnotu v prípade ak je procesor príkazov k dispozícii. V prípade ak nie je k dispozícii vráti hodnotu 0.
Príklad
1 #include <stdio.h>
2 #include <stdlib.h>
3
4 int main()
5 {
6 int i;
7 printf("Kontrola dostupnosti procesora...");
8 if (system(NULL)) puts("OK");
9 else exit(1);
10 printf("Vykonavanie prikazu DIR...\n");
11 i = system("dir");
12 printf("Vratena hodnota je: %d.\n", i);
13 return 0;
14 }