Qualcuno sa spiegarmi questo codice?
main(int argc,char** argv,char** envp){
while(*envp)
printf("%s\n",*envp++);
}
Quello che non capisco è per quale ragione effettui l'incremento ++ in quel modo. La dereferenziazione la esegue dopo l'incremento e qui ci sono. Ma perché si sposta di un solo byte all'interno dell'array di puntatori per passare all'elemento successivo??? Non avrebbe dovuto fare *(envp+sizeof(char *))?? In quel modo la mia ignoranza mi porta a dire che se envp puntava al primo elemento dell'array di puntatori, sommandovi 1 si dovrebbe ritrovare diciamo in mezzo al primo elemento, e non all'inizio del secondo....qualcuno sa dirmi se il compilatore si inventa qualcosa di strano in questi casi, del genere adattare l'operatore ++ al tipo di dato?? :roll:
- borlotto
- Ingegneria Informatica - Triennale
- Martedì, 26 Ottobre 2004
- Subscribe via email
Comment
There are no comments made yet.
Accepted Answer
Pending Moderation
dovrebbe essere algebra dei puntatori, cioe' prima incrementa il puntatore ( e l'algebra dei puntatori dice che facendo +1 incrementa di sizeof(tipo dato) e non di un byte) e solo dopo dereferenzia il puntatore....almeno credo....puo' anche essere che ti ho detto cavolate....
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 1
Accepted Answer
Pending Moderation
E' come dice frog831, il ++ indica di passare al prossimo puntatore...
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 2
Accepted Answer
Pending Moderation
E' come dice frog831, il ++ indica di passare al prossimo puntatore...
Esatto... su un puntatore ++ è uguale a + sizeof(tipo)
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 3
Accepted Answer
Pending Moderation
Grazie a tutti :wink:
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 4
Accepted Answer
Pending Moderation
E di che!
Visto che ci sei... mi ricordi cosa rappresenta il terzo parametro del main (char* envp[])?
Io ho sempre utilizzato solo due parametri... argv e argc...
Visto che ci sei... mi ricordi cosa rappresenta il terzo parametro del main (char* envp[])?
Io ho sempre utilizzato solo due parametri... argv e argc...
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 5
Accepted Answer
Pending Moderation
Contiene le variabili d'ambiente che gli passa il sistema operativo.
Io l'ho scoperto oggi
ops: :lol:
Io l'ho scoperto oggi
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 6
Accepted Answer
Pending Moderation
Per completezza: l'ultimo elemento dell'array è NULL.
(Ma abilitare l'edit dei post!?!?!? :x :x :x )
(Ma abilitare l'edit dei post!?!?!? :x :x :x )
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 7
Accepted Answer
Pending Moderation
Per completezza: l'ultimo elemento dell'array è NULL.
(Ma abilitare l'edit dei post!?!?!? :x :x :x )
Questo è l'unico form nel mondo della rete che non ha un admin!
Che tristezza.... :cry:
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 8
Accepted Answer
Pending Moderation
Si sono le variabili di ambiente, l'ho trovato guardando qua e là...già che ci siamo potete dirmi come vi state preparando??Io ho studicchiato le dispense fino a quel capitoletto sui processi e lo scheduling ma mi pare di leggere un inserto di "programmi per il mio computer" :evil: Sta seguendo la tabella di marcia o ha intenzione di andare oltre prima dell'esonero?Ora mi sono messo a scrivere un pò di programmini con chiamate di sistema varie,e chiaramente ho dovuto cercare su internet per non limitarmi a quelle stron**te su open,write e read.
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 9
Accepted Answer
Pending Moderation
Di chi parli, di Bovet o di Vitale?
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 10
Accepted Answer
Pending Moderation
già che ci siamo potete dirmi come vi state preparando??Io ho studicchiato le dispense fino a quel capitoletto sui processi e lo scheduling ma mi pare di leggere un inserto di "programmi per il mio computer" :evil:
Infonde un po' di amarezza il tutto...in effetti più si avvicina l'esonero e più non so cosa aspettarmi.
Sto cercando di non adagiarmi sul fatto che pare tutto così facile e discorsivo, ma è difficile. Temo la mazzata inaspettata.
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 11
Accepted Answer
Pending Moderation
scusate non ho detto che seguo con vitale :cry:
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 12
Accepted Answer
Pending Moderation
Nah, io sono conscio che arriverà la batosta, non è per niente inaspettata... tipi come vitale posso creare seri problemi...
Comment
There are no comments made yet.
- more than a month ago
- Ingegneria Informatica - Triennale
- # 13
- Page :
- 1
There are no replies made for this post yet.
Be one of the first to reply to this post!
Be one of the first to reply to this post!
Please login to post a reply
You will need to be logged in to be able to post a reply. Login using the form on the right or register an account if you are new here. Register Here »