Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    813

    [c/c++] come spiegare i puntatori senza fare male?

    ciao a tutti,
    la sett prossima devo tenere un corso di 15 ore di approfondimento C++ in una scuola. Visto che l'anno scorso i puntatori sembravano una bestia indomabile a 5 teste, sapreste darmi un riferimento che li spiega in maniere elementare su cui io possa basarmi?
    Se inizio a dire: "un puntatore è una variabile che contiene un indirizzo di memoria ad un altra locazione", so già in partenza che non capiranno un bel niente
    Nell'anno 1968 è bastata la potenza di due Commodore 64 per lanciare con successo una navicella sulla Luna; nell'anno 2007 ci vogliono la potenza di un processore quad core 3.30 GHz e 3 Gb di RAM (requisiti minimi ufficiali) per utilizzare Windows Vista. Qualcosa deve essere andato storto!

  2. #2
    Utente di HTML.it L'avatar di KrOW
    Registrato dal
    Feb 2009
    Messaggi
    281
    Be . . . Se chi ti ascolta ha assimilato bene il concetto di "variabile" e di "locazione di memoria" non vedo come si possa definire in forma più elementare

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    1,326
    Ma che scuola è? Un istituto tecnino? Un liceo?

    Se vuoi essere quanto più chiaro (ed elementare) possibile, ricorri al "parlar per immagini" come diceva Platone (anche se relativamente ad altro), cioè fai una metafora... che so io: in un negozio c'è una pila di pacchi (banchi di memoria) ognuno con un contenuto (i valori numerici) e un commesso (il puntatore) che "indica" ad ogni cliente (istruzioni, funzioni, procedure o altro...) in quale pacco (locazione di memoria) può trovare l'oggetto (il valore) desiderato.

    Non penso sia proprio azzeccata come metafora ma al momento non mi viene nulla di meglio...
    every day above ground is a good one

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    813
    purtroppo è un istituto tecnico
    so che nessuno capire una mazza
    Nell'anno 1968 è bastata la potenza di due Commodore 64 per lanciare con successo una navicella sulla Luna; nell'anno 2007 ci vogliono la potenza di un processore quad core 3.30 GHz e 3 Gb di RAM (requisiti minimi ufficiali) per utilizzare Windows Vista. Qualcosa deve essere andato storto!

  5. #5
    Utente bannato
    Registrato dal
    Feb 2004
    Messaggi
    2,803
    "il puntatore è la freccia"



    [serio]..se cominci con una definizione il più semplice possibile "un puntatore è una variabile che contiene un indirizzo di memoria", almeno gli studenti capiscono che è UNA VARIABILE e non un mostro strano..
    poi disquisisci ALMENO un'ora sulla classica immagine esplicativa dei puntatori tipo:

  6. #6
    ...
    un puntatore è una variabile che contiene un indirizzo di memoria
    Più precisamente il puntatore è un tipo di dato.

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    La vecchia storia della cassettiera (memoria), i cassetti (locazione di memoria), contenuto dei cassetti (valore di una variabile) e numero del cassetto (indirizzo della locazione di memoria) ? ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    813
    bah...
    vi farò sapere
    Nell'anno 1968 è bastata la potenza di due Commodore 64 per lanciare con successo una navicella sulla Luna; nell'anno 2007 ci vogliono la potenza di un processore quad core 3.30 GHz e 3 Gb di RAM (requisiti minimi ufficiali) per utilizzare Windows Vista. Qualcosa deve essere andato storto!

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Originariamente inviato da Hysoka
    bah...
    vi farò sapere
    Sai ... molto dipende dal "materiale" che hai di fronte ... potrebbero capirlo spiegandolo in maniera "classica", potrebbero non capirlo in nessun modo ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    813
    Originariamente inviato da oregon
    Sai ... molto dipende dal "materiale" che hai di fronte ... potrebbero capirlo spiegandolo in maniera "classica", potrebbero non capirlo in nessun modo ...
    sono sicuro che l'asino casca qui: fin quando sono *p, forse qualche speranza c'è
    quando poi gli dico che int *a è un array di puntantori e non un puntatore ad array, iniziano a non sarmi più dietro...
    E se poi inizio con l'illuminargli l'intelletto dicendo che "l'operatore [] è proprio di tutti i puntatori", poi iniziano a dire: Ma allora i puntatori sono vettori?

    quando ci giochiamo che a me lunedì va a finire così?
    Nell'anno 1968 è bastata la potenza di due Commodore 64 per lanciare con successo una navicella sulla Luna; nell'anno 2007 ci vogliono la potenza di un processore quad core 3.30 GHz e 3 Gb di RAM (requisiti minimi ufficiali) per utilizzare Windows Vista. Qualcosa deve essere andato storto!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.