Pointeurs de fontions... - C++ - Programmation
Marsh Posté le 20-02-2003 à 17:28:18
void* (fonction(void));
void (*fonction)(void)
est un pointeur vers une fonction du type "void foo(void)"
edit:
- tous les cast vers ou depuis des void* sont inutiles
- sizeof(char)==1 par définition
- i+=(j=read(fd,512,(void*)((int)temp)+x-512))
ultra illisible et chiatique
- temp=(void*)krealloc((void*)temp,i);
fonction=temp;
pourquoi passer par temp ?
- void exec(const char* name)
est bien mieux
Marsh Posté le 20-02-2003 à 17:39:32
merci pour ttes ces précisions
et ça a réussi !!!
merci bcp !!!
ciao...
Marsh Posté le 20-02-2003 à 17:41:14
Le Sot Zi a écrit : merci pour ttes ces précisions |
putain j'avais meme pas fait gaffe que c'etais toi! ton projet avance?
Marsh Posté le 20-02-2003 à 19:01:53
++Taz a écrit : putain j'avais meme pas fait gaffe que c'etais toi! ton projet avance? |
oui, comme tu le vois, je suis en train d'exécuter des fonctions externes. Dans 15 jours, j'aurais un mini DOS, si j'arrive à la fin du projet, bien entendu... Je v devoir passer quelques nuits blanches, et je manque vraiement de main d'oeuvre... Le pb, c ke ds 15 jours je dois le présenter en amphi, alors ça va être chaud :'(
Marsh Posté le 20-02-2003 à 17:22:16
Bonjour...
Je cherche à faire une fonction "exec()", dans un système d'exploitation monotache fait maison...
Pour cela, je compte charger le fichier en mémoire, et faire un call vers cette fonction...
J'ai testé ceci, mais le compilo me crache dessus :
Le compilo me dit ceci :
../kernel/kernel.c: Dans la fonction « exec »:
../kernel/kernel.c:47: invalid lvalue in assignment
Qqn peut-t-il m'aider ?
Merci