Puntatori e gestione dinamica della memoria
|
|
- Ignazio Belloni
- 7 anni fa
- Visualizzazioni
Transcript
1 Punttori e gestione dinmic dell memori Corso di Informtic /4 Lezione 4 Vntggi nell uso dei vettori Sono legti ll ccesso diretto gli elementi utilizzndo gli indici. v d = dimensione elemento 678 indirizzo v[i] = b + i d v[i] b = indirizzo bse i = indice (spizzmento) Indirizzmento dell RAM 2 3
2 Problemi nell uso dei vettori L dimensione di un vettore deve essere fisst l momento dell compilzione: int v[]; // non int v[dim]; con dim vribile L inserimento di un nuovo vlore comport lo slittmento di tutti quelli ll su destr: for (j = indice_prox_loc_liber; j > i; j--) v[j] = v[j-]; v[i] = nuovo_vlore; I punttori Un punttore è un vribile il cui dominio di definizione sono gli indirizzi di memori <tipo>* <vribile>; int* p; // punttore intero int *p, *q; // breve per int* p; int* q; Dereferenzizione (*) L opertore di dereferenzizione (* <punttore>) legge/scrive ll loczione di memori il cui indirizzo è il vlore del suo operndo p 25fe6 25fe *p == 2983
3 Opertore indirizzo (&) Se x è un vribile, &x è l indirizzo cui sono memorizzti i suoi vlori 25fe6 x 2983 &x == 25fe6 Esempio // esempio di dereferenzizione e // uso dell oportore & #include <iostrem.h> int min() { int x = 7; int *p, *p2; // oppure int* p; int* q; p = &x; p2 = p; cout << *p2 = << *p2 << endl; // stmp il vlore di x cioe 7 cout << p2 = << p2 << endl; // stmp il vlore di p2 cioe // l indirizzo di x Condivisione (shring) I punttori possono condividere l re di memori cui puntno: int *p, *q; int n = 44; p = q = &n; p q n 44 Ogni modific del vlore di n che vveng per ssegnzione su *p si riflette su n e su *q. Quest crtteristic viene sfruttt per ottonere effetti collterli sui vlori dei prmetri ttuli, pssndoli cioè per indirizzo.
4 Riferimenti In C++ si può vere shring nche senz i punttori, usndo riferimenti, ovvero sinonimi (lis): <tipo>& <nome rif> = <nome vr> int min () { int n = 44; int& rn = n; // rn è sinonimo di n n--; cout << rn << endl; // stmp 43 Vettori e punttori in C++ In C++ un vettore è un costnte di tipo punttore: int v[]; int* p; p = v; // il vlore di p è l ind. di bse di v // ossi p == &v[] Si può usre l notzione con gli indici per i punttori che si riferiscono vettori: p[i] // equivle v[i] Aritmetic dei punttori () Ad ogni tipo di dto corrisponde l dimensione in byte dell memori necessri per contenere i suoi vlori: int sizeof(<tipo>) // C: ritorn l dim. I punttori sono tipti: ciò è essenzile per spere cos leggere/scrivere lle loczioni di memori cui puntno
5 Aritmetic dei punttori (2) In C++ si possono sommre (o sottrrre) interi punttori: int *p, *q; q = p + ; // il vlore di q == // vlore di p + *sizeof(int) Quindi, se p punt d un vettore v: p+i == &v[i] // ovvero *(p+i) == v[i] == p[i] Aritmetic dei punttori (3) incremento e decremento: int *p; p = &n; p++; /* p punt &n + sizeof(int) */ somm e sottrzione di un intero: int n, m, *p; p = &n; p = p + m; /* p punt &n + m * sizeof(int) */ differenze tr punttori: int n,, b, *p, *q; p = &, q = &b; n = p - q; /* n è il numero degli interi llocbili tr gli indirizzi di e di b */ confronto tr punttori: int n, m, *p; p = &n; q = &m; if (p < q) /* eseguito se l indirizzo di n è minore di quello di m */ Esempio void Inverti (int v[]; int lun); // inverte l ordine degli el. di v[lun] { int t, *p, *q; for(p = v, q = p + (lun-); p < q; p++, q--) { t = *p; *p = *q; *q = t;
6 Pssggio di prmetri per vlore void f(int n){ n++; int = ; f(); Pssggio di prmetri per vlore void f(int n){ n++; int = ; f(); n Pssggio di prmetri per vlore void f(int n){ n++; int = ; f(); n
7 Pssggio di prmetri per vlore void f(int n){ n++; int = ; f(); Pssggio di pr. per riferimento void f(int& n) { n++; int = ; f() Pssggio di pr. per riferimento void f(int& n) { n++; int = ; f() n
8 Pssggio di pr. per riferimento void f(int& n) { n++; int = ; f() n Pssggio di pr. per riferimento void f(int& n) { n++; int = ; f() Pssggio di pr. per punttore void f(int* pn) { (*pn)++; int = ; f(&)
9 Pssggio di pr. per punttore void f(int* pn) { (*pn)++; int = ; f(&) pn Pssggio di pr. per punttore void f(int* pn) { (*pn)++; int = ; f(&) pn Pssggio di pr. per punttore void f(int* pn) { (*pn)++; int = ; f(&)
10 Alloczione dinmic Alloczione = destinzione di un cert quntità di memori per contenere vlori di un dto tipo Tutte le vribili di un progrmm sono llocte qundo sono in uso (punttori inclusi) E possibile llocre memori durnte l esecuzione del progrmm in un re specific dett memori dinmic Alloczione dinmic: new int *p; p = new int; *p = 2983; p 25fe6 Alloczione dinmic: new int *p; p = new int; *p = 2983; p 25fe6 25fe6
11 Alloczione dinmic: new int *p; p = new int; *p = 2983; p 25fe6 25fe Alloczione dinmic: new flot* p; *p = 3.459; // ERRORE: p non è llocto flot x = 3.459; flot *p = &x // OK: p us l lloczione di x flot* p = new flot; *p = 3.459; // OK: p è llocto Alloczione dinmic in C Tipo *p; p = (Tipo*) mlloc (sizeof(tipo)); Alloc un struttur dti l cui dimensione in byte dipende d Tipo ed è clcolt d sizeof; in cso di successo ssegn il tipo Tipo* ll indirizzo di inizio del blocco, ed il vlore è slvto in p. Se non c è più memori disponibile, mlloc ritorn NULL, che srà llor il vlore di p.
12 Alloczione dinmic di un vettore Per llocre dinmicmente un vettore occorre conoscere:. Il tipo dei suoi elementi; 2. il numero di questi elementi (che tuttvi potrà essere noto nche solo l momento dell esecuzione). int *v, lun; v = new int[lun]; // in C++ v = (int*) mlloc (sizeof(int)*lun); // in C Alloc un vettore di lun interi, dove però lun è un vribile. Comunque, un volt llocto, v punterà d un vettore l cui lunghezz non è più modificbile. Le stringhe Le stringhe sono vettori di crtteri, contenenti un termintore: \ chr s[] = Slve mondo ; chr s[maxlun]; chr *s = Slve mondo ; Esiste un tipo string, definito: typedef chr* String; Alloczione di stringhe E opportuno costruire un funzione di lloczione (lloctore o genertore) per ogni struttur dti che si implement: String StrAlloc(int len) { String *s; s = new chr[len + ]; // len + per fr posto \ return s;
13 Operzioni sulle stringhe () int strlen (String s) { int n = ; while (*s++!= \ ) n++; return n; int strcpy (String dest; String source) { while((*dest++ = *source++)!= \ ); Operzione sulle stringhe (2) String LeggiString (void) { chr buffer[maxlun]; String s; cin >> buffer; s = Strlloc(strlen(buffer)); strcpy(s, buffer); return s; I record Un record è un tupl di vlori di tipi possibilmente diversi cceduti ttrverso etichette: struct <nome struttur> { <tipo > <etichett cmpo >;... <tipo k > <etichett cmpo k >;
14 Alloczione dinmic di record (strutture) Come per i tipi di bse e per i vettori, si possono llocre record: typedef struct Record {int field; *MyRecord; MyRecord = new Record; Dt l frequenz dell uso di punttori record, il C++ us l sintssi: p->field invece di (*p).field Un modo per definire il tipo vettore () Un buon metodo per definire un vettore d llocre dinmicmente è usre un record con un cmpo lunghezz: typedef VecRec* Vettore; typedef struct vecrec { int lun; int* vec; VecRec; Un modo per definire il tipo vettore (2) v n n elementi del vettore
15 Un modo per definire il tipo vettore (3) Vettore VettAlloc (int lunghezz) { Vettore v; v = new VecRec; v->lun = lunghezz; v->vec = int[lunghezz]; return v; Un esempio più complesso: mtrici () struct MtrRec{ int righe, colonne; int **vecrighe; ; typedef MtrRec* Mtrice; n m m n Un esempio più complesso: mtrici (2) Mtrice NuovMtrice (int r, int c) { Mtrice m; int i; m = new MtrRec; m->righe = r; m->colonne = c; m->vecrighe = new int*[r]; for (i = ; i < r; i++) m->vecrighe[i] = new int[c]; return m;
16 Delloczione L memori dinmic lloct può essere recupert usndo l funzione delete: delete <punttore> Per dellocre un vettore non occorre ricordrne l dimensione: delete [] <nome vettore> Per dellocre un struttur compless come mtrice occorrono tnte chimte di delete qunte sono stte quelle di new Delloczione di Mtrice void DellocMtrice (Mtrice m) { int i; for(i = ; i < m->righe; i++) delete [] m->vecrighe[i]; delete [] m->vecrighe; delete m;
Valutazione di una espressione. Espressioni. Espressioni semplici: variabili. Espressioni semplici: costanti
Espressioni Vlutzione di un espressione Ogni espressione E h: Un espressione E del linguggio C può essere definit formlmente come segue (definizione induttiv): E è un espressione semplice. Si Op n un opertore
DettagliAllocazione dinamica delle. variabili. Maurizio Rebaudengo 1. variabili. Allocazione statica. Allocazione dinamica. malloc() Allocazione
Allozione dinmi delle vribili Allozione dinmi delle vribili L'llozione dello pzio di memori oupto dll vribili puo' eere effettut durnte l'eeuzione del progrmm. 1 2 Allozione tti Allozione dinmi Nell'llozione
DettagliCOGNOME..NOME CLASSE.DATA
COGNOME..NOME CLASSE.DATA FUNZIONE ESPONENZIALE - VERIFICA OBIETTIVI Sper definire un funzione esponenzile. Sper rppresentre un funzione esponenzile. Sper individure le crtteristiche del grfico di un funzione
DettagliDeterminanti e caratteristica di una matrice (M.S. Bernabei & H. Thaler
Determinnti e crtteristic di un mtrice (M.S. Bernbei & H. Thler Determinnte Il determinnte può essere definito solmente nel cso di mtrici qudrte Per un mtrice qudrt 11 (del primo ordine) il determinnte
DettagliCorso di Fondamenti di Informatica
Corso di Fondamenti di Informatica Il tipo puntatore; l allocazione dinamica della memoria Claudio De Stefano - Corso di Fondamenti di Informatica 1 puntatori una variabile di tipo puntatore al tipo x
DettagliCorso di Fondamenti di Informatica. Puntatori e Allocazione Dinamica
Corso di Fondamenti di Informatica Puntatori e Allocazione Dinamica I puntatori (Richiamo) Il C++ prevede puntatori a dati di qualsiasi natura, semplici o strutturati e puntatori a funzione. In particolare
Dettagli, x 2. , x 3. è un equazione nella quale le incognite appaiono solo con esponente 1, ossia del tipo:
Sistemi lineri Un equzione linere nelle n incognite x 1, x 2, x,, x n è un equzione nell qule le incognite ppiono solo con esponente 1, ossi del tipo: 1 x 1 + 2 x 2 + x +!+ n x n = b con 1, 2,,, n numeri
DettagliINFORMATICA - I puntatori Roberta Gerboni
1 2 I puntatori in C++ Il puntatore un tipo di dato scalare, che consente di rappresentare gli indirizzi delle variabili allocate in memoria. Dominio: Il dominio di una variabile di tipo puntatore è un
DettagliEquazioni di 2 grado. Definizioni Equazioni incomplete Equazione completa Relazioni tra i coefficienti della equazione e le sue soluzioni Esercizi
Equzioni di grdo Definizioni Equzioni incomplete Equzione complet Relzioni tr i coefficienti dell equzione e le sue soluzioni Esercizi Mteri: Mtemtic Autore: Mrio De Leo Definizioni Un equzione è: Un uguglinz
DettagliDove siamo. Gli array - II. Array bidimensionali (matrici) Oggi. Array bidimensionali (matrici) Sintassi Java. Stefano Mizzaro 1
8. Arry - II Dove simo Gli rry - II Stefno Mizzro Dirtimento di mtemtic e informtic Università di Udine htt://www.dimi.uniud.it/mizzro/ mizzro@dimi.uniud.it Progrmmzione, lezione 8 ottobre 7 Mttoni Progrmmzione
DettagliB8. Equazioni di secondo grado
B8. Equzioni di secondo grdo B8.1 Legge di nnullmento del prodotto Spendo che b0 si può dedurre che 0 oppure b0. Quest è l legge di nnullmento del prodotto. Pertnto spendo che (-1) (+)0 llor dovrà vlere
DettagliOrganizzazione della Memoria usata dai Processi
Orgnizzzione dell Memori ust di Processi Indirizzi m stck hep dt 0 tet 1 L struttur dti Stck (o Pil) LIFO (lst in - first out) Operzioni: Push (ggiunge un elemento in cim llo stck (che cresce verso gli
DettagliVariabile casuale uniforme (o rettangolare)
Vribile csule uniforme (o rettngolre) Le crtteristic principle è che le sue relizzzioni sono equiprobbili Si pplic nelle situzioni in cui il fenomeno: Assume vlori in un intervllo limitto [,b] L probbilità
DettagliProgrammazione I - Laboratorio
Programmazione I - Laboratorio Esercitazione 6 - Liste Gianluca Mezzetti 1 Paolo Milazzo 2 1. Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ mezzetti mezzetti di.unipi.it 2. Dipartimento
DettagliStrutture Dati Dinamiche
Strutture Dati Dinamiche Motivazioni Le variabili considerate fino a questo punto devono essere dichiarate staticamente, ossia la loro esistenza, il loro nome e la loro dimensione devono essere previsti
Dettagli2 x = 64 (1) L esponente (x) a cui elevare la base (2) per ottenere il numero 64 è detto logaritmo (logaritmo in base 2 di 64), indicato così:
Considerimo il seguente problem: si vuole trovre il numero rele tle che: = () L esponente () cui elevre l bse () per ottenere il numero è detto ritmo (ritmo in bse di ), indicto così: In prticolre in questo
DettagliPuntatori. Un puntatore contiene un numero che indica la locazione di memoria dove è presente la variabile puntata
Puntatori int i = 10; int * pi = &i; pi i = 10 116 int * pi = pi contiene un informazione che mi permette di accedere ( puntare ) ad una variabile intera Un puntatore contiene un numero che indica la locazione
DettagliEsercizi svolti Limiti. Prof. Chirizzi Marco.
Cpitolo II Limiti delle funzioni di un vribile Esercizi svolti Limiti Prof. Chirizzi rco www.elettrone.ltervist.org 1) Verificre che risult: = Dobbimo provre che per ogni ε positivo, rbitrrimente piccolo,
DettagliLezione 9: Strutture e allocazione dinamica della memoria
Lezione 9: Strutture e allocazione dinamica della memoria Laboratorio di Elementi di Architettura e Sistemi Operativi 9 Maggio 2012 Allocazione dinamica della memoria Memoria dinamica È possibile creare
DettagliPuntatori. Obiettivi: Richiamare quanto noto sui puntatori dal modulo A Presentare l analogia tra puntatori e vettori e l aritmetica dei puntatori
Puntatori Obiettivi: Richiamare quanto noto sui puntatori dal modulo A Presentare l analogia tra puntatori e vettori e l aritmetica dei puntatori 1 Il puntatore Un tipo puntatore è un tipo scalare per
DettagliSPAZI VETTORIALI. 1. Spazi e sottospazi vettoriali
SPAZI VETTORIALI 1. Spzi e sottospzi vettorili Definizione: Dto un insieme V non vuoto e un corpo K di sostegno si dice che V è un K-spzio vettorile o uno spzio vettorile su K se sono definite un operzione
DettagliAppunti tratti dal videocorso on-line di Algoritmi e Programmazione Avanzata By ALeXio
Appunti tratti dal videocorso on-line di Algoritmi e Programmazione Avanzata By ALeXio 1-La memoria dinamica La scrittura di un programma (indipendentemente dal linguaggio adottato) deve sempre tener conto
Dettagli8 Controllo di un antenna
8 Controllo di un ntenn L ntenn prbolic di un rdr mobile è montt in modo d consentire un elevzione compres tr e =2. Il momento d inerzi dell ntenn, Je, ed il coefficiente di ttrito viscoso, f e, che crtterizzno
DettagliEquazioni 1 grado. Definizioni Classificazione Risoluzione Esercizi
Equzioni grdo Definizioni Clssificzione Risoluzione Esercizi Mteri: Mtemtic Autore: Mrio De Leo Definizioni Prendimo in esme le due espressioni numeriche 8 entrmbe sono uguli 7, e l scrittur si chim uguglinz
DettagliL Allocazione Dinamica della Memoria
L Allocazione Dinamica della Memoria Maurizio Palesi DIIT Università di Catania Viale Andrea Doria 6, 95125 Catania mpalesi@diit.unict.it http://www.diit.unict.it/users/mpalesi Sommario Questo documento
DettagliLaboratorio di Algoritmi e Strutture Dati
Realizzazione di Liste Laboratorio di Algoritmi e Strutture Dati Domenico Redavid redavid@di.uniba.it Materiale di base gentilmente concesso dal dott. Nicola Di Mauro Ricercatore presso l'univ. di Bari
DettagliOperazioni sulle Matrici
Corso di Lure in Disegno Industrile Corso di Metodi Numerici per il Design Lezione 9 Ottore Operzioni sulle Mtrici F. Cliò Addizione e Sottrzione Lezione 9 Ottore Operzioni sulle Mtrici Pgin Addizione
Dettagli{ 3 x y=4. { x=2. Sistemi di equazioni
Sistemi di equzioni Definizione Un sistem è un insieme di equzioni che devono essere verificte contempornemente, cioè devono vere contempornemente le stesse soluzioni. Definimo grdo di un sistem il prodotto
DettagliEsponenziali e logaritmi
Esponenzili e ritmi ESPONENZIALI Potenze con esponente rele L potenz è definit: se > 0, per ogni R se 0, per tutti e soli gli R se < 0, per tutti e soli gli Z Sono definite: ( ) ( ) ( ) 7 7 Non sono definite:
DettagliStringhe e tipi di dati strutturati
Stringhe e tipi di dati strutturati Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 21 Marzo 2013 Info sui Labs http://tinyurl.com/ieimlabextra Ricordate di portare un adattatore!
DettagliLe stringhe. Le stringhe
Informatica: C++ Gerboni Roberta Stringhe di caratteri (esempi di utilizzo dei vettori) Nel linguaggio C++ una stringa è semplicemente un vettore di caratteri Vettori di caratteri La stringa "hello" è
Dettagli7. Derivate Definizione 1
7. Derivte Il concetto di derivt è importntissimo e molto nturle. Per vere un esempio concreto, penste l moto di un mcchin: se f(t) è l funzione che esprime qunt strd vete percorso fino d un certo istnte
DettagliEsercizi sulle serie di Fourier
Esercizi sulle serie di Fourier Corso di Fisic Mtemtic,.. 3- Diprtimento di Mtemtic, Università di Milno Novembre 3 Sviluppo in serie di Fourier (esponenzile) In questi esercizi, si richiede di sviluppre
DettagliIl linguaggio C. Puntatori e dintorni
Il linguaggio C Puntatori e dintorni 1 Puntatori : idea di base In C è possibile conoscere e denotare l indirizzo della cella di memoria in cui è memorizzata una variabile (il puntatore) es : int a = 50;
DettagliGli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori
Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine
DettagliLe operazioni di allocazione e deallocazione sono a carico del sistema.
Allocazione della memoria In C++ è possibile creare (allocare) variabili in maniera statica o dinamica. Nell allocazione statica una variabile esiste ed è utilizzabile dal momento della sua dichiarazione
DettagliStrutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1)
Strutture Strutture e Unioni DD cap.10 pp.379-391, 405-406 KP cap. 9 pp.361-379 Strutture Collezioni di variabili correlate (aggregati) sotto un unico nome Possono contenere variabili con diversi nomi
DettagliFacoltà di Economia - Università di Sassari Anno Accademico 2004-2005. Dispense Corso di Econometria Docente: Luciano Gutierrez.
Fcoltà di Economi - Università di Sssri Anno Accdemico 2004-2005 Dispense Corso di Econometri Docente: Lucino Gutierrez Algebr Linere Progrmm: 1.1 Definizione di mtrice e vettore 1.2 Addizione e sottrzione
DettagliCompito di Fondamenti di Informatica
Compito di Fondamenti di Informatica In un magazzino viene utilizzato un archivio informatico, nel quale vengono memorizzate le informazioni relative ai prodotti contenuti nel magazzino e che ne permette
DettagliBreve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN
Breve Manuale di Riferimento sulla Sintassi Linguaggi e versione aggiornata al 05/02/2004 Sommario Elementi di Base... 2 Dati, Tipi e Dichiarazioni... 2 Tipi di Dato di Base... 2 Tipi di Dato Strutturati...
DettagliLaboratorio di Informatica
Liste semplici (semplicemente linkate) Una lista semplice e costituita da nodi Laboratorio di Informatica 7. Strutture complesse di dati in C++ Ogni nodo e una struttura che contiene : Dati Un riferimento
Dettagli1 Integrale delle funzioni a scala
INTEGRALE DELLE FUNZIONI DI UNA VARIABILE Teori di Riemnn 1 Integrle delle funzioni scl (1.1) Definizione Si dice suddivisione di un intervllo chiuso e limitto [, b] un sottoinsieme {,..., n } di [, b]
DettagliIl tipo di dato astratto Pila
Il tipo di dato astratto Pila Il tipo di dato Pila Una pila è una sequenza di elementi (tutti dello stesso tipo) in cui l inserimento e l eliminazione di elementi avvengono secondo la regola seguente:
DettagliLa struttura dati ad albero binario
La struttura dati ad albero binario L albero è una struttura dati nella quale le informazioni sono organizzate in modo gerarchico, dall alto verso il basso. Gli elementi di un albero si chiamano nodi,
DettagliMeccanica dei Solidi. Vettori
Meccnic dei Solidi Prof. Ing. Stefno Avers Università di Npoli Prthenope.. 2005-06 Lezione 2 Vettori Definizione: Un grndezz vettorile (o un vettore) è un grndezz fisic crtterizzt oltre che d un numero
DettagliUNIVERSITÀ DEGLI STUDI DI TERAMO
UNIVERSITÀ DEGLI STUDI DI TERAMO CORSO DI LAUREA IN TUTELA E BENESSERE ANIMALE Corso di : FISICA MEDICA A.A. 015 /016 Docente: Dott. Chiucchi Riccrdo il:rchiucchi@unite.it Medicin Veterinri: CFU 5 (corso
DettagliIntegrali dipendenti da un parametro e derivazione sotto il segno di integrale.
1 Integrli dipendenti d un prmetro e derivzione sotto il segno di integrle. Considerimo l funzione f(x, t) : A [, b] R definit nel rettngolo A [, b], essendo A un sottoinsieme perto di R e [, b] un intervllo
DettagliIntroduzione e strumenti
Controlli utomtici Introduzione e strumenti Convenzioni generli ed elementi di bse Dll equzione ll rppresentzione grfic L lgebr dei blocchi Clcolo di funzioni di trsferimento di schemi interconnessi 2
DettagliNon ci sono vincoli sul tipo degli elementi di un vettore Possiamo dunque avere anche vettori di
ARRAY DI PUNTATORI Non ci sono vincoli sul tipo degli elementi di un vettore Possiamo dunque avere anche vettori di puntatori Ad esempio: char * stringhe[4]; definisce un vettore di 4 puntatori a carattere
DettagliStruct, enum, Puntatori e Array dinamici
Struct, enum, Puntatori e Array dinamici Tratti dal corso del Dr. Francesco Fabozzi Corso di Informatica Tipi di dato in C Abbiamo esaminato diversi tipi di dato che il C mette a disposizione dell utente
DettagliUso avanzato dei puntatori Allocazione dinamica della memoria
Uso avanzato dei puntatori Allocazione dinamica della memoria Violetta Lonati Università degli studi di Milano Dipartimento di Informatica Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica
DettagliFondamenti di Informatica T-1, 2009/2010 Modulo 2 Prova d Esame 5 di Giovedì 15 Luglio 2010 tempo a disposizione 2h30'
Prima di cominciare: si scarichi dal sito http://esamix.labx il file StartKit5.zip contenente i file necessari (solution di VS2008 e progetto compresi). Avvertenze per la consegna: apporre all inizio di
DettagliControlli Automatici. Trasformate L e Z e schemi a blocchi. Esercizi sulle trasformate L e Z
Controlli Automtici Trsformte L e Z e schemi blocchi Esercizi sulle trsformte L e Z Esercizi sulle trsformte L e Z Proposte di esercizi e soluzioni in tempo rele trsformt L di y(t) dt trsformt Z di y(i)
DettagliAllocazione dinamica della memoria
Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Tipi di memoria dati Nella macchina astratta C esistono tre tipi di memoria per allocare
DettagliLaboratorio di Matematica Computazionale A.A Lab. 11 Integrazione numerica
Lbortorio di Mtemtic Computzionle A.A. 2008-2009 1 Integrzione numeric Lb. 11 Integrzione numeric Un metodo di integrzione numerico consiste in un formul esplicit che permett di pprossimre il vlore di
DettagliLa gestione della memoria
La gestione della memoria DOTT. ING. LEONARDO RIGUTINI DIPARTIMENTO INGEGNERIA DELL INFORMAZIONE UNIVERSITÀ DI SIENA VIA ROMA 56 53100 SIENA UFF. 0577234850-7102 RIGUTINI@DII.UNISI.IT HTTP://WWW.DII.UNISI.IT/~RIGUTINI/
Dettagli{ 1, 2,3, 4,5,6,7,8,9,10,11,12, }
Lezione 01 Aritmetic Pgin 1 di 1 I numeri nturli I numeri nturli sono: 0,1,,,4,5,6,7,8,,10,11,1, L insieme dei numeri nturli viene indicto col simbolo. } { 0,1,,, 4,5,6,7,8,,10,11,1, } L insieme dei numeri
DettagliUnità Didattica 4 Linguaggio C. Vettori. Puntatori. Funzioni: passaggio di parametri per indirizzo.
Unità Didattica 4 Linguaggio C Vettori. Puntatori. Funzioni: passaggio di parametri per indirizzo. 1 Vettori Struttura astratta: Insieme di elementi dello stesso tipo, ciascuno individuato da un indice;
DettagliI puntatori e l allocazione dinamica di memoria
I puntatori e l allocazione dinamica di memoria L allocazione delle variabili Allocazione e rilascio espliciti di memoria Le funzioni malloc e free 2 2006 Politecnico di Torino 1 Allocare = collocare in
DettagliAlberi binari e alberi binari di ricerca
Alberi binari e alberi binari di ricerca Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica
DettagliEquivalenza tra equazioni di Lagrange e problemi variazionali
Equivlenz tr equzioni di Lgrnge e problemi AM Cherubini 20 Aprile 2007 1 / 21 Problemi Mostrimo or come si possono ricvre sistemi di equzioni con struttur lgrngin in un mbito diverso: prim si er crtterizzt
DettagliGeorge Boole ( )
Mtemtic Alger di Boole Cpitolo 5 Ivn Zivko George Boole (1815-1864) Mtemtico inglese del dicinnovesimo secolo, ffrontò in modo originle prolemi di logic. Le sue teorie trovno forte ppliczione un secolo
DettagliElementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I
Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave
DettagliManuale di configurazione ed utilizzo
SERVIZIO CISCO JABBER VIS 4.0 Numero documento: 132/ versione 1.0 Dt : 30/05/2013 Oggetto: VIS 4.0 Redttore documento: Bgnr Mssimilino Mnule di configurzione ed utilizzo Cisco Jbber per Smsung Android
DettagliCorso di Fondamenti di Informatica Il sistema dei tipi in C++
Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Anno Accademico Francesco Tortorella Struttura di un programma C++ // Programma semplice in C++ #include int main() { cout
DettagliIntegrali. all integrale definito all integrale indefinito. Integrali: riepilogo
Integrli ll integrle deinito ll integrle indeinito Indice dell lezione Integrle Deinito Rettngoloide Integrle deinito come re del rettngoloide Esempi e propriet Primitiv Teorem ondmentle del clcolo integrle
DettagliUnità 3 Metodi particolari per il calcolo di reti
Unità 3 Metodi prticolri per il clcolo di reti 1 Cos c è nell unità Metodi prticolri per il clcolo di reti con un solo genertore Prtitore di tensione Prtitore di corrente Metodi di clcolo di reti con più
Dettaglicorrispondenza dal piano in sé, che ad ogni punto P del piano fa corrispondere il punto P' in
Cpitolo 5 Le omotetie 5. Richimi di teori Definizione Sino fissti un punto C del pino ed un numero rele. Si chim omoteti di centro C e rpporto ( che si indic con il simolo O, ) l corrispondenz dl pino
Dettaglia.a Codice corso: 21012, La definizione del tipo di dato astratto lista è intrinsecamente ricorsiva, infatti una lista può essere:
LISTE DINAMICHE Liste semplicemente concatenate: La definizione del tipo di dato astratto lista è intrinsecamente ricorsiva, infatti una lista può essere: la lista vuota; oppure contiene un valore (di
DettagliNello studio della meccanica si incontrano due principali categorie di grandezze: scalari e vettori. Cosa distingue queste quantita?
Vettori e sclri Nello studio dell meccnic si incontrno due principli ctegorie di grndezze: sclri e vettori. Cos distingue queste quntit? Domenic sono ndto in iciclett per due ore L informzione sul tempo
DettagliESERCIZIO 1 (Definizione funzioni passaggio parametri per copia)
ESERCIZIO 1 (Definizione funzioni passaggio parametri per copia) Scrivere una funzione per definire se un numero è primo e un programma principale minimale che ne testa la funzionalità. #include
DettagliIL CONCETTO DI FILE. È illecito operare oltre la fine del file.
IL CONCETTO DI FILE Un file è una astrazione fornita dal sistema operativo, il cui scopo è consentire la memorizzazione di informazioni su memoria di massa. Concettualmente, un file è una sequenza di registrazioni
Dettagli5 2d x x >12. con a, b, c e d parametri reali. Il grafico di f (x) passa per l origine del sistema di riferimento
Questionrio Risolvi quttro degli otto quesiti: L Città dello sport è un struttur sportiv progettt dll rchitetto Sntigo Cltrv e mi complett, situt sud di Rom Rispetto l sistem di riferimento indicto in
DettagliHash Table. Hash Table
Hash Table La ricerca di un elemento su una lista (semplice o doppia) presenta una complessità di tipo O(n), dato che occorre scandire (al più) l intera lista per poter trovare l elemento desiderato. Le
DettagliIngegneria dei Sistemi Elettrici_2 a (ultima modifica 08/03/2010)
Ingegneri dei Sistemi Elettrici_2 (ultim modific 08/03/2010) Prim di definire le grndee di bse e le costnti universli del modello elettromgnetico per poter sviluppre i vri temi dell elettromgnetismo, si
DettagliGestione di stringhe. Le stringhe in C/C++
Alessio Bechini - Corso di - Gestione di stringhe Parte del materiale proposto è stato gentilmente fornito da G. Lipari Le stringhe in C/C++ In C e in C++ non esiste un vero e proprio tipo stringa. Una
DettagliLEZIONE 13 MINIMIZZAZIONE DEI COSTI. Condizione per la minimizzazione dei costi. Efficienza tecnica ed efficienza economica
LEZIONE 3 MINIMIZZAZIONE DEI COSTI Lungo periodo Soluzione nlitic Condizione per l minimizzzione dei costi Efficienz tecnic ed efficienz economic Rppresentzione grfic Isocosto ed isoqunto Sentiero di espnsione
DettagliUniversità degli Studi di Cassino Corso di Fondamenti di Informatica Tipi strutturati: Stringhe. Anno Accademico 2010/2011 Francesco Tortorella
Corso di Informatica Tipi strutturati: Stringhe Anno Accademico 2010/2011 Francesco Tortorella Stringhe di caratteri La stringa è il tipo strutturato con cui vengono rappresentati gruppi di caratteri quali
DettagliTipi di dato e strutture dati
Tipi di dato e strutture dati 1. Tipi di dato Pressoché tutti i linguaggi di programmazione tipati consentono all utente di definire nuovi tipi. Il C++ fornisce quattro modi per farlo: typedef, enum, struct,
DettagliCinematica ed equilibrio del corpo rigido
omportmento meccnico dei mterili rtteristiche di sollecitione inemtic ed equilirio del corpo rigido rtteristiche di sollecitione efiniione delle crtteristiche Esempio 1: trve rettiline Esempio : struttur
DettagliFunzioni razionali fratte
Funzioni rzionli frtte Per illustrre l medizione che AlNuSet fornisce per lo studio delle funzioni rzionli frtte, inizimo con il considerre l funzione f ( ) l vrire del prmetro. L su rppresentzione nell
DettagliAUTOVALORI ED AUTOVETTORI. Sia V uno spazio vettoriale di dimensione finita n.
AUTOVALORI ED AUTOVETTORI Si V uno spzio vettorile di dimensione finit n. Dicesi endomorfismo di V ogni ppliczione linere f : V V dello spzio vettorile in sé. Se f è un endomorfismo di V in V, considert
Dettagli= * Operazioni su Matrici. Addizione/sottrazione di matrici. Moltiplicazione di matrici (Algebra Lineare)
Operzioni su Mtrici Addizione/sottrzione di trici So e sottrzione Operzioni di lger linere: Moltipliczioe Divisione Operzioni eleento-per-eleento Funzioni di se per trici Mtrici di nueri csuli Per trici
DettagliStrumenti Matematici per la Fisica
Strumenti Mtemtici per l Fisic Strumenti Mtemtici per l Fisic Approssimzioni Notzione scientific (o esponenzile) Ordine di Grndezz Sistem Metrico Decimle Equivlenze Proporzioni e Percentuli Relzioni fr
DettagliEsercitazioni di Elettrotecnica: circuiti in regime stazionario
Università degli Studi di ssino sercitzioni di lettrotecnic: circuiti in regime stzionrio prof ntonio Mffucci Ver ottore 007 Mffucci: ircuiti in regime stzionrio ver -007 Serie, prllelo e prtitori S lcolre
DettagliDati aggregati. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica - in breve: Definizione di tipi Array Stringhe Strutture
DettagliFacoltà di Ingegneria
UNIVERSITA DEGLI STUDI DI CAGLIARI Fcoltà di Ingegneri Corso di Lure Specilistic in Ingegneri per l Ambiente e il Territorio TESINA DI CALCOLO NUMERICO Anlisi dell errore nei metodi di risoluzione dei
DettagliTest di autovalutazione
UNITÀ ELEMENTI DI CALCOLO ALGEBRICO Test di utovlutzione 0 0 0 0 0 0 60 0 80 90 00 n Il mio punteggio, in entesimi, è n Rispondi ogni quesito segnndo un sol delle lterntive. n Confront le tue risposte
DettagliProgettazione strutturale per elementi finiti Sergio Baragetti
Progettzione strutturle per elementi finiti Sergio Brgetti Fcoltà di Ingegneri Università degli Studi di Bergmo Il metodo degli Elementi Finiti permette di risolvere il problem dell determinzione dello
DettagliPuntatori Passaggio di parametri per indirizzo
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Puntatori Passaggio di parametri per indirizzo Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica
DettagliUNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Secondo Modulo di Ricerca Operativa Prova in corso d anno 12 giugno 2000
A UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneri Informtic Secondo Modulo di Ricerc Opertiv Prov in corso d nno giugno Nome: Cognome: Brrre l csell corrispondente: Diplom t Lure t Esercizio
DettagliProgettazione strutturale per elementi finiti Sergio Baragetti
Progettzione strutturle per elementi finiti Sergio Brgetti Fcoltà di Ingegneri Università degli Studi di Bergmo Il metodo degli Elementi Finiti permette di risolvere il problem dell determinzione dello
DettagliE U Q A U Z A I Z O I N O I N DI SE S C E O C N O DO
EQUAZIONI DI ECONDO GRADO Riepilogo delle soluzioni in bse l segno di < φ : b > : b b Prof I voi, EQUAZIONI DI ECONDO GRADO EQUAZIONI PURE DI ECONDO GRADO : EEMPI ) ) ) 7 7 ) > φ (impossibile) ) impossibil
DettagliElementi di Calcolo Matriciale
Corso di Lure in Disegno Industrile Corso di Metodi Numerici per il Design Lezione 7 Ottobre Elementi di Clcolo Mtricile F. Cliò Mtrici: Definizioni e Simbologi Lezione 7 Ottobre Elementi di Clcolo Mtricile
DettagliComplementi di Matematica e Calcolo Numerico A.A Laboratorio 7 - Integrazione numerica
Complementi di Mtemtic e Clcolo Numerico A.A. 0014-015 Lbortorio 7 - Integrzione numeric Dtunfunzionef vlorireliperclcolre b fornisce l funzione predefinit qud Sintssi: q=qud(f,,b,tol) input: f funzione
DettagliVerso i puntatori: Cosa è una variabile?
Verso i puntatori: Cosa è una variabile? Quando si dichiara una variabile, ad es. int a; si rende noto il nome e il tipo della variabile. Il compilatore alloca l opportuno numero di byte di memoria per
DettagliScheda Sei ESPONENZIALI E LOGARITMI. 0,+. Inoltre valgono le
Sched Sei ESPONENZIALI E LOGARITMI L funzione esponenzile Assegnto un numero rele >0, si dice funzione esponenzile in bse l funzione Grfici dell funzione esponenzile Se = l funzione esponenzile è costnte:
DettagliEsercizio 1: funzione con valore di ritorno di tipo puntatore
Esercitazione Fondamenti di Informatica B Corso di Laurea in Ingegneria Meccanica 7 Esercitazione: 14 dicembre 2005 Esercizi su ricorsione, manipolazione stringhe, strutture dinamiche Problema: Esercizio
DettagliAlcune mosse che utilizzano le proprietà delle operazioni in N
Operzioni in N Proprietà commuttiv dell ddizione + b b +,b N Proprietà ssocitiv dell ddizione ( + b) + c + (b + c) + b + c,b,c N Proprietà invrintiv dell sottrzione b ( + c) (b + c) b ( c) (b c),b,c N,b,c
DettagliLa parabola LA PARABOLA È IL LUOGO DEI PUNTI DEL PIANO EQUIDI- STANTI DA UN PUNTO DETTO FUOCO E DA UNA RETTA CHE NON LO CONTIENE DETTA DIRETTRICE.
L prol In figur è trccito il grfico di un prol con sse di simmetri verticle. Si vede suito dl grfico ce: l curv è simmetric rispetto l suo sse di simmetri il suo punto più in sso è il vertice il vertice
Dettagli