![]() |
Mòdul
7
![]() |
Fonaments de
Programació. Llenguatge C/C++![]() |
Pràctica ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
Pràctica
d'ampliació ![]() ![]() |
Arguments de la funció main()
En aquesta pràctica veurem dos exemples d'aplicació dels arguments de la funció main().
|
||||||
![]() |
Desenvolupament de la pràctica
Quan es vol especificar opcions o valors en el moment d'executar un programa des de la línia de comandaments del sistema operatiu, aquests es passen a través dels arguments de la funció main(). La funció main() pot tenir dos arguments:
En aquest primer exemple es pot veure fàcilment la forma d'extraure aquests paràmetres: Definiu un projecte nou anomenat m7p091 i afegiu-li un arxiu de font C/C++ anomenat m7p091.cpp. Escriviu el següent codi:
Explicació del programa En aquest programa es considerarà els paràmetres passats des de la línia d'ordres, per aquest motiu la funció main() comença:
La variable argc contindrà el nombre total de paràmetres, incloent el nombre de l'arxiu executable, cada paràmetre es passa com a cadena de caràcters i es pot recuperar amb argv[]. A continuació es pot comprovar un exemple d'execució del programa anterior:
En el cas que es necessiti passar paràmetres numèrics, s'ha de fer una conversió. En el següent exemple es pot veure amb nombres del tipus double: Definiu un projecte nou anomenat m7p092 i afegiu-li un arxiu de font C/C++ anomenat m7p092.cpp. Escriviu el següent codi:
Explicació del programa Aquest programa calcularà la mitjana dels nombres introduïts darrere del nom de l'arxiu executable. La conversió de la cadena de caràcters a variables del tipus double es fa amb la funció atof() el protocol de la qual es troba definit a l'arxiu stdlib.h Aquesta funció intenta convertir la cadena a double i, si no pot, torna 0. Per exemple:
Com que el nombre de paràmetres numèrics és igual a argc-1, per a calcular la mitjana s'ha de dividir per aquest nombre. En el cas que argc-1 sigui 0, el programa sortirà immediatament gràcies a la línia de comprovació:
|