FASE DEBUGGING: Compiler Linker. controllando che la voce Genera le informazioni per il debug cioè. "Generate debugging information"



Documenti analoghi
Bloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio. IDE = Integrated Development Environment

Dev C++ Prerequisiti. Note di utilizzo. Utilizzo di Windows Effettuare il download da Internet Compilazione di un programma

Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa

Dipartimento di Sistemi e Informatica Università degli Studi di Firenze. Dev-C++ Ing. Michele Banci 27/03/2007 1

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50

Codifica: dal diagramma a blocchi al linguaggio C++

COMPILAZIONE DI UN APPLICAZIONE. 1) Compilare il file (o i file se più d uno) che contengono il testo del programma. compilatore

Appunti sugli Elaboratori di Testo. Introduzione. D. Gubiani. 19 Luglio 2005

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO...

AMBIENTE DEV PASCAL. Dev-Pascal Finestra di apertura

Tutorial sugli ambienti di sviluppo: Eclipse e NetBeans

Il compilatore Dev-C++

Tale attività non è descritta in questa dispensa

Word. Cos è Le funzioni base Gli strumenti. 1

INSTALLAZIONE E UTILIZZO DEL COMPILATORE Code::Blocks 8.02

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,

Introduzione a Dev-C++

WORD per WINDOWS95. Un word processor e` come una macchina da scrivere ma. con molte più funzioni. Il testo viene battuto sulla tastiera

Office 2007 Lezione 09. Contenuto riutilizzabile

Corso di Laurea in Matematica. Seminario C/C++ Lorenzo Dusty Costa. Università degli Studi di Milano Dipartimento di Matematica

GUARINI PATRIMONIO CULTURALE VERSIONE MSDE/SQL SERVER MANUALE DI INSTALLAZIONE GUARINI PATRIMONIO CULTURALE VERSIONE MSDE/SQL SERVER

Istruzioni per installare EpiData e i files dati ad uso di NetAudit

Guida all utilizzo del compilatore lcc-win32 per creare una applicazione console

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools

Creare un sito Multilingua con Joomla 1.6

Informatica B. Breve introduzione all ambiente di programmazione. Politecnico di Milano IV Facoltà di Ingegneria 2003

ShellExcel. Una domanda contiene i riferimenti (#A, #B, #C) alle celle che contengono i dati numerici del

Guido d uso sito internet Unione Valdera

Il web server Apache Lezione n. 3. Introduzione

Strumenti per lo sviluppo del software

Tabelle 3.4. Unità didattica. Copyright 2009 Apogeo. Obiettivi. Prerequisiti

Corso Eclipse. Prerequisiti. 1 Introduzione

Eclipse - Nozioni Base


SendMedMalattia v Manuale d uso

Integrated Development Environment (IDE) DevC

Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass

Fondamenti di Informatica T-1 CdS Ingegneria Informatica a.a. 2011/2012. Introduzione a Visual Studio 2005/2008/2010

Excel. A cura di Luigi Labonia. luigi.lab@libero.it

Microsoft Word. Nozioni di base

Guida al backup e aggiornamento del programma MIDAP

Mon Ami 3000 Lotti e matricole Gestione della tracciabilità tramite lotti/matricole

Aggiornamento programma da INTERNET

Tutorial per l installazione del J2SE 6 e configurazione del sistema operativo

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo

Figura 1 Le Icone dei file di Excel con e senza macro.

MANUALE UTENTE. Computer Palmare WORKABOUT PRO

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)

ToolChain: Come Generare Applicazioni in Linguaggio Macchina

UTILIZZO DEL MODULO DATA ENTRY PER L IMPORTAZIONE DEI DOCUMENTI (CICLO PASSIVO)

Database Manager Guida utente DMAN-IT-01/09/10

Librerie. Laboratorio di Informatica Antonio Monteleone 28

Il Programma... 3 I moduli... 3 Installazione... 3 La finestra di Login... 4 La suite dei programmi... 6 Pannello voci... 10

Come modificare la propria Home Page e gli elementi correlati

Test Excel conoscenze di Base

Modello per la compilazione della scheda progetto SK_3.1.xls (da utilizzarsi per la presentazione di progetti di attività formative)

COME COLLEGARSI DA REMOTO AD UN PLC S7-300/400 via MPI Indice

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

2015 PERIODO D IMPOSTA

On-line Corsi d Informatica sul web

SCARICO DATI ONETOUCH Verio per EuroTouch Home GUIDA ALL USO

I TUTOR. Massimiliano Cattafi Ilaria Laurenti

I link o collegamenti ipertestuali

MANUALE DI INSTALLAZIONE OMNIPOINT

MANUALE D USO DELLA PIATTAFORMA ITCMS

7.4 Estrazione di materiale dal web

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

Introduzione a Visual Studio 2005

Introduzione ad Eclipse

Autologon per Windows Come evitare che Windows chieda Password e Utente all avvio

Joomla: Come installarlo e come usarlo. A cura di

MANUALE DI INSTALLAZIONE OMNIPOINT

Registratori di Cassa

Tricks & Tips. [Access] Tutorial - ActiveX - Controllo Tree View. - Michele de Nittis - Versione: 1 Data Versione: venerdì 30 agosto 2002

FPf per Windows 3.1. Guida all uso

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo

SOFTWARE SICUREZZA SUL LAVORO PROCEDURE STANDARDIZZATE GUIDA ALL USO

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)

L ambiente di sviluppo Android Studio

Progetto PON C1-FSE : APPRENDERE DIGITANDO SECONDARIA VERIFICA INTERMEDIA CORSISTA NOME E COGNOME:

Avvio di Internet ed esplorazione di pagine Web.

Navigazione Web e comunicazione Utilizzo del Browser Navigazione di base

5.3 TABELLE RECORD Inserire, eliminare record in una tabella Aggiungere record Eliminare record

Capitolo 4 Pianificazione e Sviluppo di Web Part

Programmazione avanzata con Visual Basic 2005

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

Gestione Rapporti (Calcolo Aree)

MANUALE PER CONSULTARE LA RASSEGNA STAMPA VIA WEB

I PAGAMENTI CON BONIFICI ELETTRONICI

Prova Scritta del 19/07/10

Compilatore risorse display grafico LCD serie IEC-line

Introduzione a ROOT. 1. Informazioni generali

[FINANZAECOMUNICAZIONE / VADEMECUM]

RILEVA LIGHT Manuale dell Utente

Installazione, configurazione e utilizzo di IIS

Guida di Installazione GCC

ProgettAzione V anno Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni

1. Creare la photogallery

Moduli (schede compilabili) in Word Esempio: scheda di alimentazione per un degente

Transcript:

FASE DEBUGGING: Prima della compilazione, si devono inserire 1 nel progetto informazioni per il debug cioè si devono visualizzare le opzioni di progetto seguendo il percorso: controllando che la voce Genera le informazioni per il debug cioè "Generate debugging information" sia selezionata: Yes Compiler Linker Si attiva il programma debugger 2 con icona Debug oppure da menu comando Debug Debug o con tasto F8 che consente di interrompere e riprendere l esecuzione del programma utente compilato e linkato. E pertanto necessario introdurre almeno un punto di interruzione o breakpoint ed il programma Insight Debugger lo inserisce automaticamente nella posizione del cursore se si usa il comando Esegui dal Cursore (versione in Italiano) o Run to Cursor (versione in Inglese). Tra le opzioni di Debug è infatti prevista la possibilità di: attivare l esecuzione fino alla linea dove è posizionato il cursore: Debug Esegui dal Cursore 1 Se non si inseriscono informazioni per il debug, una finestra avverte che bisogna provvedere e ricostruire il progetto. 2 Insight cioè il programma gdb con interfaccia grafica (Insight Debugger)

Per inserire almeno un breakpoint: basta un click nella zona con sfondo nero, a fianco della linea voluta oppure si usa il comando Debug Toggle Breakpoint

Per procedere passo-passo si esegue, allora, fino al primo punto di interruzione o breakpoint premendo, come già detto, F8 oppure l icona da menu, il comando: Debug Debug oppure selezionando,

Potendo, ad esempio, visualizzare il valore delle variabili prima e dopo l elaborazione Posizionando il cursore sulla variabile di cui si vuole conoscere il valore ( a nell esempio) Si noti come, per default, il valore di una variabile intera sia un intero casuale (a = 2 nell esempio ) oppure usando ed impostando il nome della variabile

NB: Si noti come, il valore di a dopo l inizializzazione sia quello voluto, mentre per default, il valore di b prima dell inizializzazione sia un intero casuale (b = 53 nell esempio )

Si prosegue con

Le opzioni di Debug permettono anche di: vedere il codice Assembler con sintassi Intel oppure AT&T Debug Finestra CPU Con sintassi Intel, l istruzione b=5; corrisponde a salvare il numero esadecimale mov DWORD PTR [ebp-8], 0x5 che sarà copiato in registro interno alla CPU mov edx, DWORD PTR [ebp-8] prima di poterlo sommare

In fase di editing si può inserire 3 almeno un bookmark: si posiziona il cursore sulla riga voluta e si seleziona l icona Toggle oppure si seleziona da menu Edit Toggle Bookmarks 3 Per velocizzare il posizionamento con Vai al segnalibro quando si attiva l opzione Esegui dal Cursore o Run to Cursor

L installazione scelta: linguaggio C++ Verificabile con Tools Environment Options Opzioni dell ambiente

Tipo di applicazione: Win32 Console Opzioni generali di progetto

Altre tipologie di progetto dove automaticamente nelle Project Options viene selezionata un applicazione tipo: Win32 Console Basic Console Application (con uso system("pause"); return EXIT_SUCCESS; definite in cstdlib) Introduction Hello word (con possibile passaggio di parametri alla funzione main da riga di comando impostabili da menu Esegui Parametri )

Appendice Nella versione tradizionale del linguaggio C++ le librerie standard 4 erano contenute in file di intestazione (header file) Il C++ evoluto permette di dividere lo spazio globale di definizione delle variabili (e delle funzioni) in diverse parti dette namespace ad ognuna delle quali è associato un nome univoco predefinito nel linguaggio o definito dal programmatore. Tale raggruppamento dei nomi in contenitori detti "spazio dei nomi" serve ad evitare ambiguità sull'uso di identificatori in programmi complessi. Un namespace è dunque un insieme di nomi che può essere usato in alternativa ad altri insiemi analoghi e gli identificatori standard del linguaggio C++ sono contenuti nel namespace std. La possibilità di scegliere sintassi diverse, più evolute, è legata alle funzioni predefinite usate e l uso obbligatorio o alternativo delle versioni più evolute dipende dalle scelte commerciali del produttore del compilatore. Nel caso dell IDE Dev-C++ si deve usare la sintassi più evoluta per le direttive di precompilazione: #include <fstream> #include <iostream> using namespace std; // nomi delle librerie e non dei file comprensivi di estensione // clausola per evitare di ripetere il namespace // ad esempio invece di std :: cout si può scrivere solo cout NB: uso del compilatore GNU Nell IDE Dev-C++ si utilizza (come nel sistema Linux) il compilatore GNU (GNU C Compiler o gcc) nella versione Minimalist GNU for Windows cioè un compilatore C/C++ per windows 5 e la libreria standard glibc (GNU libraries for C) acquisendone implicitamente la compatibilità POSIX 6 (Portable Open System Interface) dove la X è un chiaro riferimento al sistema UNIX. 4 Per un elenco dei nomi di tali librerie e funzioni contenute puoi digitare Example Programs Database usando l opzione Trova con percorso Help Help di Dev-C++ 5 5 La home page del sito è http://www.mingw.org/ 6 Sul finire degli anni 80 l Institute of Electrical and Electronics Engeneers (IEEE) iniziò la stesura di una serie di standard pensati per rendere portabili le applicazioni tra architetture diverse: tale famiglia prese nome POSIX, sistema parzialmente implementato anche su architetture diametralmente diverse da UNIX ad esempio Windows NT da cui derivano Windows 2000 e Windows XP. Infatti i sottosistemi POSIX definiti nell architettura Windows NT possono dialogare con il sottosistema Win32 come usare chiamate di sistema opportunamente mediate da sottosistemi di riferimento.