|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Feb 2006
Città: Caserta
Messaggi: 1056
|
c = (type) func(param1, ...);
Qualcuno mi spiega questa sintassi?
addr1 = (char *) shmat (shmid1, 0, 0); Dove addr1 è definito come char * addr1 Il mio problema è capire quel (char *) che in teoria avrei anche compreso, dato che addr1 si aspetta un puntatore a carattere e non a void (cosa restituita in genere dalla shmat). Ma in pratica cosa fa? Opera una conversione sul valore restituito? In che modo? Ha un nome questa tecnica? Ringrazio anticipatamente chiunque vorrà illuminarmi. Ultima modifica di masteryuri : 10-04-2012 alle 11:11. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Jul 2005
Città: Vicenza
Messaggi: 1570
|
Quote:
Ovviamente la conversione deve essere fatta con coscienza, perchè nel caso in cui la memoria puntata non contenga byte effettivamente di un char, tu andrai a leggere una sequenza di byte casuale e pertanto il tuo programma avrà un comportamento imprevedibile. |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Feb 2006
Città: Caserta
Messaggi: 1056
|
Avevo immaginato bene dunque, ti ringrazio
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:15.




















