Dalla A alla Z passando per C - Robotica
Dalla A alla Z passando per C - Robotica
Dalla A alla Z passando per C - Robotica
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
c = a + b<br />
invece, viene calcolato il valore corrispondente all’espressionea + b e tale valore viene assegnato<br />
<strong>alla</strong> variabilec. Cio’ che accade e’ che i valori memorizzati nelle aree di memoria associate agli<br />
identificatori a e b vengono sommati all’interno del processore, dopo aver eventualmente trasferito<br />
(i valori potrebbero gia’ trovarsi nei registri) tali valori d<strong>alla</strong> memoria centrale ai registri del<br />
processore. Il valore risultante e’ poi scritto nell’area di memoria associata all’identificatore c.<br />
Tenendo presente il significato dell’o<strong>per</strong>atore =, e’ facile notare come le istruzioni<br />
oppure<br />
10 = a<br />
a + b = c<br />
non siano valide nel linguaggio C, anche se in matematica hanno <strong>per</strong>fettamente senso.<br />
La prima assegna il valore di una variabile ad una costante, mentre la seconda assegnerebbe<br />
il valore di una variabile ad una espressione, ma quest’ultima non e’ associabile<br />
a nessuna area di memoria.<br />
Evidentemente il programma presentato non e’ molto utile, se non <strong>per</strong> illustrare l’uso delle<br />
variabili. Infatti, se si usasse il programma d’esempio <strong>per</strong> calcolare delle somme, esso andrebbe<br />
ricompilato ogni volta che si desidera cambiare i valori da sommare. Una versione piu’ generale<br />
del programma potrebbe prevedere di leggere i dati da tastiera, come si vedra’ nella Sezione 4.9,<br />
oppure in modo ancora piu’ efficiente, leggendo i dati da un file.<br />
4.8 Visualizzazione a video con printf<br />
Nel semplice esempio precedente e’ da notare come venga utilizzata la funzione printf <strong>per</strong><br />
visualizzare a video il valore della variabile c. L’istruzione<br />
printf("La loro somma e’ %d\n", c);<br />
visualizza il valore della variabile c di tipo int sostituendo, all’interno della stringa La loro<br />
somma e’, la sequenza di caratteri che corrisponde al valore numerico della variabile. La funzione<br />
printf utilizza la sequenza di caratteri %d <strong>per</strong> individuare la posizione all’interno della stringa di<br />
partenza <strong>alla</strong> quale inserire il valore numerico. Nel caso specifico, %d informa la funzione printf<br />
che il tipo della variabile e’ intero.<br />
4.9 Lettura di dati da tastiera<br />
Talvolta e’ necessario richiedere dei dati all’utente <strong>per</strong> poter effettuare un’elaborazione, che<br />
tipicamente li inserisce da tastiera.<br />
Per l’input da tastiera si utilizza la famiglia di funzioni scanf, che in generale si occupano<br />
di fare il parsing di una stringa di caratteri e di estrarne dei valori, che vengono assegnate ad<br />
opportune variabili 3 .<br />
3 Fare il parsing significa appunto interpretare il contenuto di un insieme di caratteri.<br />
39