![]() |
Mòdul
1
![]() |
Fonaments de
Programació. Llenguatge C/C++![]() |
Pràctica
![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
Una conversa en C++ A la pràctica 2 hem fet servir dues de les funcions d'entrada i sortida més importants de C: printf() i scanf(). C++, com superconjunt de C, inclou també aquestes funcions, però incorpora altres elements que poden ser més còmodes en molts casos, es tracta dels objectes cout i cin. Les declaracions d'aquests objectes es troben a l'arxiu de capçalera: iostream.h:
|
||||||||
![]() |
Desenvolupament de la
pràctica
Feu el mateix que heu fet a les pràctiques anteriors per tal d'obrir un nou arxiu però en aquest cas seleccionarem com a tipus de fitxer C++ Source file. Poseu com a nom m1p04, i comprovareu com Anjuta col·loca automàticament l'extensió .cc . Escriviu a la finestra de text el següent codi:
Premeu la tecla F11 ( munta ) i F3 per executar. Veiem com ara la és compila amb g++. g++ "m1p04.cc" -o "m1p04 Explicació del programa Per imprimir en pantalla s'ha fer servir l'objecte cout. Aquest objecte ja no és exactament una funció, però encara que no es pot explicar amb detall què és, és fàcil explicar com funciona. Les instruccions "#include <iostream>" y "using namespace std;" son necessàries perquè les declaracions que permeten l’accés a "cout" y "cin" estan en una llibreria externa. Es pot imaginar que cout és la pantalla i que l'operador <<, anomenat operador d'inserció, envia informació a l'objecte cout (pantalla). La potència d'aquesta forma d'enviar dades per pantalla és que no fa falta indicar quin tipus de dades enviem. Per enviar una cadena s'escriu:
i per enviar una variable numèrica s'escriu:
Per tant, no es fan servir codis de tipus com fèiem a les funcions de C printf() i scanf(). Per imprimir diferents tipus de dades només fa falta fer servir l'operador << més d'una vegada:
El manipulador endl inserta un caràcter de nova línia, tal com feia "\n", i a més buida el buffer. El mateix passa amb l'objecte cin. Aquest representa l'entrada estàndard (el teclat) i va associat amb l'operador d'extracció: >>. La sentència:
llegeix del teclat una cadena de caràcters (sense espais) i l'emmagatzema a la variable nom. I la sentència:
llegeix un número enter i l'emmagatzema a la variable edat. Per tal de poder llegir cadenes de caràcters amb espais (per exemple Josep Anton) s'ha de fer servir la següent funció associada a l'objecte cin:
Aquesta sentència fa que es llegeixin fins a 30 caràcters o fins que premem INTRO. Entendre el funcionament d'aquests objectes no és necessari per tal d'usar-los. No és l'objectiu d'aquest curs entrar en la programació orientada a objectes i, per aquest motiu, no entrarem en més detalls. |