PDA

Afficher la version complète : Question basique sur les pointeurs en C



Ray ishido
24/05/2007, 15h18
Salut,

je suis en train de m'interesser au C et si j'ai bien compris l'histoire des pointeurs, j'ai un doute sur la position de l'etoile:
qand je declare une fonction:

int *f (int,int), je declare une fonction qui renvoie pointeur sur un int (et qui demande 2 int en entrée), c'est bien ca? mais est-ce que je ne pourrais pas declaré la meme fonction de cette façon: *int f (int,int)? et si j'ecrit int* f(int,int) c'est l'equivalent?

autre question: des fois je trouve des examples code avec:
void * f(...) cela equivaut a void *f() ?

bon voila, si quelqu'un a la reponse ca serait cool http://www.alionet.org/style_emoticons/<#EMO_DIR#>/smile.gif

Heero_Yuy
24/05/2007, 15h38
Salux,

Réponse directe d'un développeur http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif

Que tu écrives :


void *f()

void * f()
ou

void* f()

C'est la même chose.

Par contre, il me semble que la forme :


*void f()

soit incorrecte et va te causer des problèmes lors de la compilation. A moins que cela ait une autre signification. En tout cas, c'est une forme que je n'ai jamais vu en C.

Maintenant, lorsque tu écris :


int *f(int, int)

Tu déclares effectivement une fonction renvoyant un pointeur sur un type entier, avec comme paramètres 2 entiers.



J'avais oublié : fais un petit tour ici : http://wiki.alionet.org/doku.php?id=howto:ref_biblio, tu trouveras une petite bibliographie concernant le développement - qu'il soit sous Linux ou un autre OS http://www.alionet.org/style_emoticons/<#EMO_DIR#>/wink.gif

Ray ishido
24/05/2007, 18h15
oki doki! merci pour la reponse, les choses sont beaucoup plus claires maintenant! http://www.alionet.org/style_emoticons/<#EMO_DIR#>/smile.gif

Heero_Yuy
25/05/2007, 08h33
Mais de rien. Si tu as d'autres questions sur la prog en C, n'hésites pas. Je suis en plein de dedans depuis quelques temps http://www.alionet.org/style_emoticons/<#EMO_DIR#>/wink.gif http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif alors je pourrais peut-être t'aider http://www.alionet.org/style_emoticons/<#EMO_DIR#>/cool.gif

aitina
03/06/2007, 22h48
Mais de rien. Si tu as d'autres questions sur la prog en C, n'hésites pas. Je suis en plein de dedans depuis quelques temps http://www.alionet.org/style_emoticons/<#EMO_DIR#>/wink.gif http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif alors je pourrais peut-être t'aider http://www.alionet.org/style_emoticons/<#EMO_DIR#>/cool.gif[/b]


Laissez tomber le c,passer directement au c++....actuellement tous les jeux ou applcations qui se respectent sont ecrits en c++

A votre disposition pour le c++...

Cordialement

Heero_Yuy
04/06/2007, 10h51
Désolé, mais le noyau Linux (que je considère comme respectable http://www.alionet.org/style_emoticons/<#EMO_DIR#>/tongue.gif ) est écrit en C.

Et puis, rien ne t'empêches d'utiliser les 2 langages, c'est d'ailleurs ce que je fais avec easySUSE : un noyau en C et l'interface graphique en C++ avec Qt http://www.alionet.org/style_emoticons/<#EMO_DIR#>/wink.gif

Burn2
04/06/2007, 15h02
Tien ça me fait penser qu'il faudrait que je me replonge sur le c++ et avec de l'affichage graphique. Mon but étant de creer des application pour linux facilitant la configuration et l'utilisation de certains logociels disponibles qu'en console.