Laboratorio di Linguaggi lezione XI Marco Tarini Università dell’Insubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea.

Slides:



Advertisements
Presentazioni simili
Laboratorio di Linguaggi lezione I: "Hello, world!" Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso.
Advertisements

LINGUAGGIO DI PROGRAMMAZIONE C
Funzioni e procedure Ogni linguaggio di programmazione ad alto livello mette a disposizione del programmatore questi strumenti, ed il C non è da meno!
Laboratorio di Linguaggi Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in Informatica.
Nel C non esiste un dato primario di tipo stringa; queste sono rappresentate con un array monodimensionale di caratteri (tipo char). Così per definire.
Introduzione al linguaggio C
Stringhe di caratteri In linguaggio C.
Informatica 2 Lezione 4 Corso di laurea in matematica Informatica 2 Dott. Ing. Leonardo Vito Corso di laurea matematica indirizzo matematica per le applicazioni.
1 Classi di memorizzazione. 2 Definiscono le regole di visibilità delle variabili e delle funzioni quando il programma è diviso su più file Stabiliscono.
Introduzione al linguaggio C
Le funzioni.
Concetti di base: header file, funzione main(),set caratteri C++, token, operatori, espressioni etc. Flusso di controllo, cicli, costrutti.
FUNZIONI DI BIBLIOTECA
Prof.ssa Chiara Petrioli -- Fondamenti di programmazione, a.a. 2009/2010 Corso di Fondamenti di Programmazione a.a.2009/2010 Prof.ssa Chiara Petrioli Corso.
Prof.ssa Chiara Petrioli -- corso di programmazione 1, a.a. 2006/2007 Corso di Programmazione 1 a.a.2006/2007 Prof.ssa Chiara Petrioli Corso di Laurea.
Laboratorio di Linguaggi lezione IV: tipi definiti dallutente Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di.
Laboratorio di Linguaggi lezione VI: puntatori 2/3 Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso.
Laboratorio di Linguaggi lezione VI Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in.
Laboratorio di Linguaggi lezione I: "Hello, world!" Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso.
Laboratorio di Linguaggi lezione IX Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in.
Laboratorio di Linguaggi lezione VIII Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea.
Laboratorio di Linguaggi lezione III Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea.
Laboratorio di Linguaggi lezione V Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in.
Laboratorio di Linguaggi lezione IV Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in.
Laboratorio di Linguaggi lezione II Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in.
Laboratorio di Linguaggi note sull'uso dell' IDE DevC++ Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese.
Laboratorio di Linguaggi lezione VII: puntatori 3/3 Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso.
Laboratorio di Linguaggi lezione VIII B: Puntatori e Pasticci Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di.
Laboratorio di Linguaggi P R I M O C O M P I T I N O Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese.
Laboratorio di Linguaggi lezione IV Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in.
Laboratorio di Linguaggi lezione IX: Dentro le Librerie Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese.
Laboratorio di Linguaggi lezione IV Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in.
Laboratorio di Linguaggi lezione III: tipi base, espressioni, type-cast Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e.
Laboratorio di Linguaggi lezione V: puntatori (1/3) Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso.
Laboratorio di Linguaggi lezione III Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea.
Laboratorio di Linguaggi lezione XI: I/O Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea.
Laboratorio di Linguaggi lezione IX: tipi ricorsivi Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso.
Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in Informatica Anno Accademico 2007/08.
Laboratorio di Linguaggi lezione II Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in.
Funzioni di Libreria per le stringhe DICHIARAZIONI CONTENUTE NEL FILE: char *strcpy( char *dest, const char *sorg ); Copia sorg in dest, incluso il carattere.
Le funzioni.
Espressioni condizionali
Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per lambiente e il territorio Ambienti di programmazione Stefano Cagnoni e Monica Mordonini.
Programmazione modulare nel linguaggio C
IL CONCETTO DI PACKAGE Una applicazione è spesso composta di molte classi (eventualmente correlate) Un package è un gruppo di classi che costi- tuiscono.
Java Contardi Carlo A.S. 2008/09.
Programmazione di Calcolatori
Programmazione di Calcolatori
INTERFACCIAMENTO ASSEMBLY - C++
Unità Didattica 3 Linguaggio C
Laboratorio di Linguaggi lezione VII: variabili Globali e Locali Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali.
Programmazione di Calcolatori
G. Amodeo, C. Gaibisso Programmazione di Calcolatori Lezione XVIII Le matrici Programmazione di Calcolatori: le matrici 1.
Programmazione di Calcolatori
C. Gaibisso Programmazione di Calcolatori Lezione XVI Allocazione dinamica della memoria Programmazione di Calcolatori: allocazione dinamica della memoria.
Corso di Programmazione Grafica e Laboratorio Daniele Marini
1 Esempi domande di esame. 2 Dato il seguente programma #include int main(){ int *p,j=9,i=5; p=&j; *p=i; printf("%d %d %d\n", i,j,*p); scanf("%d",p);/*
1 Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza Valentina Ciriani ( ) Laboratorio di programmazione Lezione 11 e 12 -
Arduino: introduzione alla programmazione
1 Il linguaggio C Precisazioni sull’esperienza in laboratorio.
Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma “La Sapienza”
Operatori di incremento e decremento
Scrivere e compilare programmi
Il linguaggio C Notate che ....
Lezione I Alessandro Dal Palu’ Laboratorio di Programmazione.
Il linguaggio C Un primo programma C : un primo programma (2) /* Programma che calcola il massimo fra tre numeri inseriti da tastiera */ #include #define.
Linguaggio C: Le basi Stefano Cagnoni e Monica Mordonini
Laboratorio di Linguaggi... altre D O M A N D E ! Marco Tarini Università dell’Insubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso.
Fabio Scotti – Università degli Studi di Milano 1 Lezione 1 e 2 Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza Valentina Ciriani.
Informatica B Allievi Elettrici - AA Fondamenti della programmazione in linguaggio C (III)
Transcript della presentazione:

Laboratorio di Linguaggi lezione XI Marco Tarini Università dell’Insubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Progetti a piu' files: condividere macro

M a r c o T a r i n i ‧ L a b o r a t o r i o d i L i n g u a g g i ‧ / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a file " main.c " file " auxiliary.c " #include "auxiliary.h" int pippo=2; static int i=0; int funz1(int b,int e) {... pippo... } file " main.c " #include "auxiliary.h" int main(){ int x; x = funz1(5, 6);... if (pippo)...;... } file " auxiliary.h " /* MAXN: il numero max... blah blah */ #define MAXN 100 typedef enum {... } TipoStrano; /* funzione 1: blah blah */ int funz1(int, int); /* pippo: blah blah */ extern int pippo;

M a r c o T a r i n i ‧ L a b o r a t o r i o d i L i n g u a g g i ‧ / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a Progetti a piu' files: perchè? Scopi: –Modularità del progetto software dividere il progetto in aree concettualmente separate mantenibilita', chiarezza... –Separazione interfaccia / implementazione –Riutilizzabilità del codice –Parallelizzazione dello sviluppo software –Riduzione tempo di ri-compilazione (sempre meno) (ma, storicamente, tra le motivazioni principali)

M a r c o T a r i n i ‧ L a b o r a t o r i o d i L i n g u a g g i ‧ / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a Le librerie esterne #include NB: parentesi angolate

M a r c o T a r i n i ‧ L a b o r a t o r i o d i L i n g u a g g i ‧ / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a Librerie standard più comunemente usate... : Utilità generali (malloc, calloc, free, NULL, rand...) : Input/Output (printf, sprintf, scanf, FILE...) : Funzioni matematiche (sin, cos, exp, sqrt, fabs...) : Funzioni su caratteri (isdigit, isgraph...) : Funzioni su stringhe (strcmp, strcpy) : Funzioni di ora e data (clock, time...) : Definizioni valori Limite di interi (INT_MAX, INT_MIN...) : Definizioni valori Limite di floats (DBL_MAX, DBL_MIN...) : Diagnostica (assert)

M a r c o T a r i n i ‧ L a b o r a t o r i o d i L i n g u a g g i ‧ / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a Uso di librerie e linker Esempio: la libreria OpenGL (grafica 3D) #include... int main(){... /* usa OpenGl */... } Sono dichiarazioni ("promesse"). E le definizioni corrispondenti? Il file GL/gl.h contiene: – definizioni tipi di dato – funzioni (i prototipi) – variabili (come "extern") – costanti – macros

M a r c o T a r i n i ‧ L a b o r a t o r i o d i L i n g u a g g i ‧ / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a Progetti a piu' files: collisioni eseguibile finale exec.exe linker main.c sorgenti di OpenGL OpenGL.h pre- process. file precomp. 1 compiler object file main.o pre- process. file precomp. 3 compiler file di libreria (già compilata) OpenGL32.lib

M a r c o T a r i n i ‧ L a b o r a t o r i o d i L i n g u a g g i ‧ / 0 5 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a Per linkare la libreria (già compilata) in Dev-C++