devc una guida
Post on 05-Nov-2015
223 Views
Preview:
DESCRIPTION
TRANSCRIPT
-
Integrated Development Environment (IDE)
DevC++ 4.9.9.2
Manuale utente
Data ultima revisione: 22/10/2008
Fondamenti di informatica Universit Politecnico di Bari
Facolt 1a Facolt di Ingegneria - Sede di Bari
Corso di laurea Ingegneria Informatica
Ingegneria dellAutomazione Ingegneria Gestionale Ingegneria Meccanica
Autori:
Prof. Giacomo PISCITELLI Ing. Tommy Di Noia Ing. Roberto Mirizzi
Il presente manuale utente stato realizzato dagli autori indicati nellanno e nellambito dei corsi indicati, utilizzando una versione del manuale stesso del 2005, scaricata via Internet, a cura del Prof. Domenico BENEVENTANO, dellIng. Massimo GHIDONI e della Dott.sa Marina MOSCATELLI (Facolt di Ingegneria - Sede di Reggio Emilia - Universit degli Studi di Modena e Reggio Emilia) Il manuale attuale si riferisce alla revisione 4.9.9.2 resa disponibile, per la.a. 2007/2008, inizialmente nellambito del corso di Fondamenti di Informatica I dei Corsi di Laurea in Ingegneria Informatica e Ingegneria dellAutomazione.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 2 di 38
Sommario
1. INTRODUZIONE ....................................................................................................3
2. SETUP....................................................................................................................5
2.1. Procedura di download................................................................................................. 5
2.2. Procedura di installazione............................................................................................ 8
2.3. Configurazione ............................................................................................................ 11 2.3.1. Opzioni di compilazione ........................................................................................................... 13 2.3.2. Opzioni delleditor ..................................................................................................................... 15 2.3.3. Opzioni dellambiente ............................................................................................................... 16
3. SESSIONE DI LAVORO ......................................................................................17
3.1. Il progetto..................................................................................................................... 17 3.1.1. Creazione di un nuovo progetto ............................................................................................... 17 3.1.2. Apertura di un progetto/file esistente........................................................................................ 19 3.1.3. Modifica del codice sorgente.................................................................................................... 20
3.2. Esecuzione del programma........................................................................................ 21 3.2.1. Compilazione ............................................................................................................................... 21 3.2.2. Compilazione, link ed esecuzione ............................................................................................... 24 3.2.3. Esecuzione con parametri ........................................................................................................... 30
3.3. Salvataggio del codice ............................................................................................... 31
4. DEBUG.................................................................................................................33
4.1. Introduzione................................................................................................................. 33
4.2. Il debug di un programma .......................................................................................... 33
4.3. Inserire breakpoint...................................................................................................... 34
4.4. Eseguire unistruzione per volta (stepping) ............................................................. 36
5. ALCUNI RIFERIMENTI UTILI ..............................................................................37
5.1 Help in linea .................................................................................................................... 37
5.2 Bloodshed.net................................................................................................................. 37
5.3 SourceForge.NET ........................................................................................................... 37
5.4 Forum di sviluppatori..................................................................................................... 38
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
adminEvidenziato
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 3 di 38
1. Introduzione DevC++ un ambiente di sviluppo integrato (IDE, ovvero Integrated Development Environment)
che funziona da front-end verso il compilatore GCC che pienamente compatibile con lo standard C89 o ANSI C.
Fig. 1.1: Informazioni su DevC++
ANSI C uno standard proprio perch la maggior parte dei compilatori soddisfa le specifiche da esso previste per il linguaggio.
Grazie alla sua interfaccia grafica, un ambiente IDE consente di utilizzare in modo semplice gli strumenti offerti dal compilatore senza dover ricorrere necessariamente alle istruzioni da riga di comando (command-line).
Lultima versione ad oggi disponibile la 4.9.9.2.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 4 di 38
LIDE della 4.9.9.2 si presenta come in fig. 1.2.
Fig. 1.2: LIDE DevC++ 4.9.9.2
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 5 di 38
2. Setup Per installare e configurare DevC++ 4.9.9.2 necessario:
1. scaricare (download) il file per il setup del compilatore dallapposito sito; 2. installare DevC++ versione 4.9.9.2 mediante doppio clic sul file devcpp-4.9.9.2_setup; 3. configurare DevC++ per prepararlo allutilizzo.
2.1. Procedura di download
Per effettuare il download del compilatore necessario: - dalla pagina con la copia dei lucidi del docente fare click sul link Download DEV C++
Si viene ridiretti alla pagina dedicata al Dev-C++
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 6 di 38
In fondo a tale pagina sono indicati 3 tipi diversi di download.
Scegliere il 1 tipo di download, indicato con un riquadro in rosso nella seguente figura
Si viene ridiretti alla pagina SourceForge dedicata al download del Dev-C++.
Scegliere di effettuare il download dal direct link indicato con un riquadro in rosso nella seguente figura
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 7 di 38
Viene richiesto di eseguire o di aprire il file di setup.
Scegliere Salva.
Salvare il file devcpp-4.9.9.2_setup.exe in una cartella di nome DevCpp.
Si pu ora procedere localmente, senza essere necessariamente collegati in rete.
La prima volta che si effettua linstallazione del compilatore si dovr procedere come di seguito indicato.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 8 di 38
2.2. Procedura di installazione
Prevede i passi di seguito riportati (wizard).
Dapprima il licence agreement: DevC++ gratuito.
Fig. 2.1: License Agreement
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 9 di 38
Poi le opzioni di installazione: linstallazione tipica di default e prevede la selezione automatica dei componenti necessari.
Fig. 2.2: Installazione tipica
Si sceglie quindi la directory di installazione.
Fig. 2.3: Directory di installazione
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 10 di 38
Viene richiesto se si vuole che il compilatore sia usabile da tutti gli utenti del computer. Rispondere OK.
Vengono estratti nella directory specificata i file compressi contenuti del file di installazione e viene segnalata il termine dellinstallazione del compilatore.
Fig. 2.4: Installazione terminata
Si pu ora procedere con la configurazione dellambiente di programmazione.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 11 di 38
2.3. Configurazione
La configurazione iniziale di DevC++ consente di scegliere la lingua e laspetto grafico.
Fig. 2.5: Configurazione iniziale
Viene richiesto se si vogliono installare funzioni addizionali. Rispondere NO.
Fig. 2.6: Richiesta installazione funzioni addizionali
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 12 di 38
La configurazione iniziale stata terminata e viene ora richiesto di caricare il compilatore. Rispondere OK.
Viene ora caricato il compilatore che appare come nel seguente figura.
ora possibile procedere a configurare i parametri di compilazione e personalizzare leditor del codice sorgente.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 13 di 38
2.3.1. Opzioni di compilazione
Scegliere, da Strumenti, le Opzioni di Compilazione
e specificare le seguenti opzioni per la Generazione di Codice/Ottimizzazioni
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 14 di 38
Fig. 2.7: Opzioni di compilazione
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 15 di 38
2.3.2. Opzioni delleditor
Fig. 2.8 : Opzioni delleditor
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 16 di 38
2.3.3. Opzioni dellambiente
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 17 di 38
3. Sessione di lavoro Una tipica sessione di lavoro con un ambiente di sviluppo prevede una serie di azioni, spesso
svolte in modo ciclico.
Durante una sessione di lavoro: 1. si crea un nuovo progetto o si apre un progetto esistente; 2. si modifica il codice sorgente; 3. si salvano le modifiche apportate; 4. si effettua la compilazione; 5. in caso di esito positivo, si effettua il link (se necessario); altrimenti si ritorna al passo 2; 6. in caso di esito positivo il programma viene eseguito, altrimenti si ritorna al passo 2.
3.1. Il progetto
Dal momento che un programma pu essere costituito da pi file, lIDE prevede il concetto di progetto, ossia un gruppo di file di codice sorgente in linguaggio C o C++ (.C) che costituisce il programma da compilare ed eseguire.
La creazione di un file progetto indispensabile per la creazione di file di codice sorgente.
Se il programma risiede in un unico file (ad esempio esercizio.c), necessario creare dapprima il progetto che lo contiene.
3.1.1. Creazione di un nuovo progetto
Fig. 3.1: Creazione di un nuovo progetto
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 18 di 38
Ci occuperemo di applicazioni console, cio che utilizzano come standard input e standard output una finestra MS-DOS. Il progetto sar costituito da un programma in C.
Fig. 3.2: Applicazioni console in C
Nel caso di progetti costituiti da un unico file, possibile assegnare al progetto (file con estensione .dev) lo stesso nome del file sorgente (file con estensione .c).
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 19 di 38
3.1.2. Apertura di un progetto/file esistente
Lapertura di un file o progetto esistente consente di modificare il codice sorgente.
Fig. 3.3: Apertura di un progetto/file esistente
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 20 di 38
3.1.3. Modifica del codice sorgente
LIDE dispone di un editor che, oltre ad offrire levidenziazione automatica delle parole chiave (keyword), permette di:
- effettuare ricerche e sostituzioni di testo; - di spostarsi ad una determinata funzione del programma; - di spostarsi ad una determinata riga (linea) del programma.
Queste funzionalit di ricerca/sostituzione testo sono accessibili dal menu Cerca.
Fig. 3.4: Funzioni di ricerca/sostituzione
Nel caso di ricerca di un testo possono essere definiti i parametri di ricerca
Fig. 3.5: Ricerca di testo
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 21 di 38
3.2. Esecuzione del programma
3.2.1. Compilazione
La voce Compila consente di effettuare la compilazione ed il link del progetto, ossia dellinsieme dei file di codice sorgente .C di cui costituito il programma.
Fig. 3.6: Compilazione
Il comando comporta il salvataggio automatico del progetto.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 22 di 38
Se la compilazione avvenuta con successo compare la finestra di dialogo Compile Progress con status Done..
Fig. 3.7: Progetto compilato
ATTENZIONE
Si raccomanda di tener conto che il DevC++
- assume che la prima riga del programma principale sia definita come funzione intera: int main()
- usa una finestra DOS per lI/O e, perci, richiede la seguente direttiva al precompilatore #include e la seguente istruzione al termine del main
system(PAUSE) che consentir di chiudere la finestra DOS.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 23 di 38
Gli eventuali errori di compilazione sono presentati nella scheda (tab) Compilatore.
Fig. 3.8: Scheda Compilatore con errori di compilazione
Nella scheda (tab) Log di compilazione si possono vedere, indipendentemente dalla presenza di errori o meno, i risultati (log) dellattivit di compilazione.
Fig. 3.9: Scheda Log di compilazione
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 24 di 38
3.2.2. Compilazione, link ed esecuzione
Lesecuzione del comando Compila & Esegui comporta nellordine: 1. compilazione del file sorgente main.c (generazione del file di codice oggetto main.o); 2. qualora siano presenti, compilazione dei rimanenti file sorgenti .c componenti il progetto
(generazione dei rispettivi file di codice oggetto .o) 3. link del progetto (generazione del file progetto.exe).
Fig. 3.10: Compilazione, link ed esecuzione
Il comando comporta il salvataggio automatico del progetto.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 25 di 38
In presenza di errori il programma non viene eseguito.
In presenza di errori, nella scheda (tab) Compilazione si possono vedere le tipologie di errore riscontrate (compilazione, link e build).
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 26 di 38
Nella scheda (tab) Log di compilazione si possono vedere i risultati (log) delle attivit di compilazione e di link. In essa sono riportati gli eventuali errori generati.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 27 di 38
Nel caso in cui la compilazione e il linkage siano terminati con successo, si aprir la finestra console del Dos, attraverso la quale sar possibile introdurre i dati e visualizzare i risultati.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 28 di 38
Al termine dellesecuzione, sar necessario chiudere la finestra console premendo un tasto qualsiasi
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 29 di 38
Con il comando Pulisci si elimina dalla directory corrente il file .exe generato. Si consiglia di utilizzare questo comando prima di una nuova azione di compilazione ed esecuzione.
Fig. 3.13: Eliminazione delleseguibile generato
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 30 di 38
3.2.3. Esecuzione con parametri
possibile parametrizzare lesecuzione di un programma attribuendo un valore ai parametri della funzione main.
int main (int argc, char *argv[])
Per specificare il valore di tali parametri si deve richiamare il comando Parametri... dal menu Esegui. I parametri (stringa) devono essere separati da spazio.
Fig. 3.14: Specifica di parametri nella funzione main()
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 31 di 38
3.3. Salvataggio del codice
I comandi di salvataggio sono contenuti nel menu File.
Le opzioni di salvataggio sono 4: - salvataggio del file sorgente .C corrente (comando Salva); - salvataggio con rinomina del file sorgente .C corrente (comando Salva Come); - salvataggio con rinomina del progetto (.dev) corrente (comando Salva il Progetto come...); - salvataggio di tutti i file aperti (Salva Tutto).
Fig. 3.15: Salvataggio
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 32 di 38
Il salvataggio con nome prevede di specificare la directory in cui il file deve essere salvato.
Fig. 3.16: Salvataggio con nome di un file sorgente .C
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 33 di 38
4. Debug
4.1. Introduzione
noto che alcune volte vengono commessi errori nello scrivere un programma. Individuare e correggere tali errori, detti bugs, pu essere alcune volte molto intricato. Per aiutare un programmatore a esaminare il comportamento del proprio programma nel corso dellesecuzione, stato messo a punto uno specifico tool, il debugger
Il debugger essenzialmente esegue un programma tenendo traccia delle sue funzioni, variabili e istruzioni. Esso capace di arrestare lesecuzione del programma in uno specifico punto, detto breakpoint. Si possono inserire breakpoint ovunque nel programma: quando lesecuzione del programma giunge ad un breakpoint, il debugger la sospende e consente di esaminare i dati correnti del programma stesso.
Si capisce quindi lutilit del debugger durante la fase di individuazione e correzione degli errori di un programma
4.2. Il debug di un programma
Per attivare il debugger sufficiente aprire il menu a tendina Debug e cliccare sullopzione Debug.
Se non avete impostato le opzioni di debugging nel progetto, Dev-C++ vi chieder se volete ricostruire il vostro programma con labilitazione di questa opzione. In alternativa pi conveniente aprire il menu a tendina Strumenti, selezionare lopzione Opzioni di Compilazione e poi quella di Generazione di Codici/Ottimizzazioni: in corrispondenza della sezione Linker, avvalorare con Yes lopzione Genera le informazioni per il debug. Dopo aver ricostruito il vostro progetto, rilanciare il debugger.
Ora il debugger ha caricato il vostro programma e lo sta eseguendo.
Per trarre beneficio del debugger per necessario apprendere come:
- inserire breakpoint nel programma
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 34 di 38
- far eseguire il programma una istruzione alla volta (stepping)
- visualizzare il valore di variabili
- conoscere le funzioni chiamate prima di arrivare ad un breakpoint o a uninterruzione del programma dovuta ad un errore grave.
In realt il debugger consente di svolgere anche altre funzioni, che esorbitano rispetto agli obiettivi di questo manuale.
4.3. Inserire breakpoint
Potete usare un breakpoint per interrompere lesecuzione del programma a una specifica istruzione (linea di codice), prima di aver lanciato il debugger.
Per aggiungere un breakpoint, prima posizionate il cursore sulla linea di codice interessata poi aprite il menu a tendina Debug e cliccate sullopzione Attiva/Disattiva Debugger. In alternativa potete direttamente cliccare sullarea scura alla sinistra dellistruzione interessata.
La linea di codice interessata si colorer di rosso, indicando che il debugger arrester lesecuzione in corrispondenza di tale istruzione.
Quando avrete avviato il debugger, se il programma esegue la linea di codice interessata, questa si colorer di blue.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 35 di 38
A questo punto sar possibile esaminare il valore di particolari variabili attraverso il tasto Nuova Osservazione, posizionato in basso a destra nellarea riservata al controllo del debug.. . . .
Alternativamente se selezionate una parola nel programma e premete F4, verr aggiunta losservazione della variabile senza che venga richiesto il nome della variabile.
Ancora, se se puntate il mouse su una variabile e avete abilitato lopzione Osservazione variabile sotto mouse contenuta nelle Opzioni dellAmbiente del menu a tendina Strumenti, la variabile sar aggiunta alla lista delle variabili osservate.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 36 di 38
4.4. Eseguire unistruzione per volta (stepping)
. . . . . oppure procedere allistruzione successiva mediante il tasto Step Succ. posizionato in basso a sinistra nellarea riservata al controllo del debug.
Nel caso listruzione successiva sia una chiamata di funzione (o procedura) il debugger salter ad eseguire la prima istruzione della funzione se si usa il tasto Step Interno, posizionato in basso a sinistra nellarea riservata al controllo del debug. Se, invece, si usa il tasto Step Esterno, posizionato in basso a sinistra nellarea riservata al controllo del debug, verr proseguita lesecuzione del programma fino a raggiungere il prossimo breakpoint.
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 37 di 38
5. Alcuni riferimenti utili
5.1 Help in linea
Fig. 4.1: Help in linea
5.2 Bloodshed.net
il sito ufficiale di presentazione del compilatore DevC++ in lingua inglese.
http://www.bloodshed.net/dev/devcpp.html
5.3 SourceForge.NET
un sito di sviluppo in inglese che tratta anche del compilatore DevC++.
Dalla pagina http://sourceforge.net/projects/dev-cpp/ possibile: scaricare il compilatore; scaricare aggiornamenti (patches & bug fixes); scaricare informazioni sulle precedenti versioni del compilatore (release notes); consultare forum; consultare lelenco dei bugs; consultare news sullo stato della documentazione, sulle versioni, sulla soluzione di problemi, ecc..
-
DevC++ Manuale utente
Stampa del: 30 novembre 2009 Pagina 38 di 38
5.4 Forum di sviluppatori
uno forum di sviluppatori DevC++ in lingua italiana.
http://forum.redangel.it/
top related