-->
  • Home
    • WorldInformatic's history
  • Operative Systems
    • Mac
    • Windows
  • Some guide
  • Programming language
    • C
    • Java
    • HTML
  • Smartphone
    • Apple iOS
    • Android
  • Games
    • Smartphone Games
    • Web Games
    • PC e Console
  • News
    • Apple News
    • Android/Google News
  • Enjoy!
  • Contact us

C: corso completo

- Parte 01: Introduzione
- Parte 02: Fasi, variabili, operatori e software
- Parte 03: Tipi di dato, direttive e 1° programma
- Parte 04: Tipi di formato, printf e scanf
- Parte 05: Istruzioni condizionali e di iterazione
- Parte 06: Funzioni e progetti su più file
- Parte 07: Puntatori e passaggio dei parametri
- Parte 08: Array, stringhe e strutture
- Parte 09: Gestione file: file di testo
- Parte 10: Gestione file: file binari
- Parte 11: Allocazione dinamica della memoria
- Parte 12: Creare ed utilizzare le liste nel C
- Parte 13: Ordinamento di array e strutture
- Parte 14: Esercizi sul linguaggio C

C: corso completo

25 febbraio 2013

Immagine
Ciao a tutti, 
in questa sesta parte del corso completo di C che tengo su questo sito, voglio parlarvi delle funzioni che si possono creare in C, e di come è possibile costruire programmi su più file, in modo da separare funzioni e altre definizioni dal resto del programma.


LE FUNZIONI
Le funzioni permettono al programmatore di costruire nuove istruzioni, che risolvono un determinato problema e svolgono solo specifiche operazioni. Le funzioni sono così composte:
  • Hanno un nome univoco;
  • Sono determinate da un tipo di formato, che denota il tipo di risultato che si otterrà;
  • Hanno al loro interno delle istruzioni;
  • Ritornano un risultato, in base al tipo di formato specificato.

Le funzioni vengono invocate attraverso il passaggio di parametri da parte dell'utente; è necessario adesso però specificare che ci sono due tipi di parametri:
  1. I parametri formali, che sono specificati nella definizione della funzione e comprendono anche il tipo che rappresentano;
  2. I parametri attuali, che vengono indicati dal programmatore al momento della chiamata della funzione e devono corrispondere ai parametri formali in numero, posizione e tipo, mentre il loro nome può essere differente.
Immagine


Nel corpo della funzione si devono scrivere le istruzioni che si desiderano fare eseguire, e anche scrivere un valore di ritorno, che in questo deve essere un int, avendo determinato come tipo di formato un int per la funzione; se la nostra funzione non prevede invece un ritorno di alcun dato, bisognerà indicare il tipo della funzione come un void:
void scrittaRisultato(int result){ 
        printf("Il numero maggiore e' il numero %d", result);
}
Se ancora non riuscite a vedere le potenzialità dell'uso di funzioni, fidati per adesso di me quando vi dico che sono veramente utilissime (e per programmi corposi obbligatorie!!); di sicuro potete già capire comunque che sono utilissime perchè permettono il loro riutilizzo in più punti del programma, quindi risparmiano tempo e memoria del computer.


RICORSIONE E ITERAZIONE
Le funzioni possono essere ricorsive o iterative:
  • Le funzioni ricorsive prevedono un caso base, dove la ricorsione finisce, e si prevede di riuscire a soddisfare il problema usando i termini dello stesso problema (ovvero richiamando più volte la stessa funzione);
  • Un iterazione si definisce un processo computazionale iterativo, ovvero un processo che si completa per accumulo e per gradi, fornendo sempre risultati parziali.
Immagine

Per capire la ricorsione, bisogna analizzare per gradi tutto il programma; alla prima chiamata (n=4), si entra nell'else e si richiama nuovamente la funzione, questa volta con n=3, moltiplicata per l'attuale valore di n. E così si procede fino al caso base (ossia n<=0), ritornando il numero 1;
Immagine
Nelle funzioni iterative non si richiama sempre la stessa funzione, ma si procede con le istruzioni creando continuamente risultati parziali, fino a un valore finale (n).


PROGETTI SU PIU' FILE
Sempre in riferimento a programmi futuri molto corposi, programmare su più file diversi è una cosa veramente obbligatoria, in quanto permette di riutilizzare il codice tantissime volte e di dichiarare strutture o variabili una sola volta.

Per poter fare questo, occorre creare (oltre al file principale) altri due file, solitamente con lo stesso nome (ma estensione diversa):
  • Un file Header, con estensione .h, dove si dichiarano le funzioni;
  • Un altro file con estensione .c, dove si definiscono le funzioni.

File header "esempio.h"

Immagine

File "esempio.c"

Immagine

File principale, chiamato in questo "main.c"

Immagine
Anche questa lezione è terminata; esercitatevi un pò ad utilizzare le chiamate di funzioni perchè vi saranno veramente utilissime in futuro. Se volete scaricare i file di questo progetto premete sul link qui sotto.


Se volete esercitarvi con degli esercizi, andate qui: Esercizi sulle funzioni.
parte 6: funzioni e progetti su più file
File Size: 77 kb
File Type: zip
Download File

Ciao a tutti,                                                                                                              Pumo
Pumo Matteo


Tweet
    Condividi



comments powered by Disqus

Social



    Condividi


Segui @WInformatic

OkNotizie

Autore
Salve a tutti!
Mi chiamo Pumo Matteo.
Per saperne di più: Biografia


Categorie
  • - Mac
  • - Windows
  • - Apple iOS
  • - Android
  • - Programmazione
  • - Guide varie


sito www.worldinformatic.com scambio banner net-parade Net-Parade.it Snippet







Scappatelle

Guadagna soldi
<a href="http://www.fidelityhouse.eu/" target="_blank" title="Fidelityhouse.eu la community del guadagno online">Fidelityhouse.eu</a>

Social Network

Follow us on Social Network:

Topics

Windows
Smartphone games

If you want, make a donation

TO CONTACT US, USING THE PAGE IN THE TOP

Author

Immagine
I'm Matteo Pumo. University of Bologna - Faculty of computer Engeneering.
- My Biography

Italian version of site


Site made by Pumo Matteo © Copyright 2013 - Bologna, Italy - All rights reserved - It's prohibit all reproduction form, partial or total, of materials.