Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - array strutture e funzioni
Forum - C/C++ - array strutture e funzioni - Pagina 3

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
ZioCrocifisso (Member)
Pro


Messaggi: 135
Iscritto: 06/03/2013

Segnala al moderatore
Postato alle 19:59
Giovedì, 09/01/2014
Ti è stato già dato un codice in cui viene modificato un campo di una struct, e ti ho spiegato come modificarlo quando si tratta di un puntatore.

PM Quote
Avatar
Enrico Mario (Normal User)
Newbie


Messaggi: 13
Iscritto: 09/01/2014

Segnala al moderatore
Postato alle 20:02
Giovedì, 09/01/2014
scusami, cosi dovrebbe esser giusto

void inPersona (struct persona *p)
printf ("prego inserire nome: "); scanf ("%s\n", p.nome);
printf ("cognome: "); scanf ("%s\n", p.cognome);
printf ("quanti numeri di tel ha: "); scanf ("%d\n", &p.qnumeri);

l'unica cosa, è che non riesco a richiamare la funzione scritta prima (struct numtel innum)

PM Quote
Avatar
ZioCrocifisso (Member)
Pro


Messaggi: 135
Iscritto: 06/03/2013

Segnala al moderatore
Postato alle 20:15
Giovedì, 09/01/2014
Ripeto: in questo caso devi usare "->", non ".". E riguardo alla funzione precedente, devi usare memcpy.

PM Quote
Avatar
Enrico Mario (Normal User)
Newbie


Messaggi: 13
Iscritto: 09/01/2014

Segnala al moderatore
Postato alle 20:19
Giovedì, 09/01/2014
ok capito la -> ( <funzione particolare?> (persona->nome) giusto?)

scusami ma nel corso non si è menzionato della memcpy! cos'è?

PM Quote
Avatar
ZioCrocifisso (Member)
Pro


Messaggi: 135
Iscritto: 06/03/2013

Segnala al moderatore
Postato alle 20:26
Giovedì, 09/01/2014

PM Quote
Avatar
Enrico Mario (Normal User)
Newbie


Messaggi: 13
Iscritto: 09/01/2014

Segnala al moderatore
Postato alle 20:38
Giovedì, 09/01/2014
grazie, sembra comodo.. ma non posso usarlo il mio profe non l'ha spiegato!

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6404
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 21:22
Giovedì, 09/01/2014
Guarda che il corpo delle funzioni inizia dopo la parentesi aperta ... quindi

Codice sorgente - presumibilmente C/C++

  1. void inPersona (struct persona *p)
  2. {
  3.   printf ("prego inserire nome: ");
  4.   scanf ("%s", p->nome);
  5.  
  6.   printf ("cognome: ");
  7.   scanf ("%s", p->cognome);
  8.  
  9.   printf ("quanti numeri di tel ha: ");
  10.   scanf ("%d", &p->qnumeri);



A questo punto utilizzi un ciclo for che inizia da 0 e termina a p->qnumeri e all'interno chiami la prima funzione assegnando il risultato agli elementi puntati da p (non serve memcpy)


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo