Posez votre question Signaler

[C] Pointeur & tableau [Résolu]

Debhian - Dernière réponse le 12 déc 2007 à 02:10
Bonjour,

Je voudrai savoir comment est-il possible de fournir un pointeur de tableau multi dimentionnel dans une fonction ?

en effet, dans la norme, main peut avoir un argument char *table[] qui renvoie sur un tableau de tableaux de chars constants

j'ai essayé par moi meme de reproduire une tel variable, mais je n'y arrive pas. Comment on pourrai definir un tel tableau ?

Le but est de renvoyer un tableau style
table[x]="xxx"

voila, merci
Lire la suite 

[C] Pointeur & tableau »

6 réponses
Réponse
+0
moins plus
Salut,

Si tu connais le nombre d'index dans ton tableau, il faudrait déclarer ta fonction comme ceci:
type fonction(char (*argument)[nb_index]);


En fait tout est dit ici:
http://www.isty-info.uvsq.fr/~rumeau/fclc/fclc007.html#q_2

Tu peux même te débrouiller si tu ne connais pas la taille du tableau à l'avance.
Ajouter un commentaire
Réponse
+0
moins plus
Je te remercis :)
Ajouter un commentaire
Réponse
+0
moins plus
Pour aider les autres, je laisse un petit code d'exemple:
http://debhy.free.fr/main.txt
kilian - 12 oct 2005 à 17:38
Merci :-)
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

g un problème avec les pointeurs,
je déclare mon objet Particle ptemp;

je veux que ptemp.X pointe sur la meme adresse du pointeur p.X
avec p une particule que j'ai déja déclarée et initialiée

j'écris ptemp=p; mais je trouve que &ptemp.X est differente de &p.X
j'ai essayé avec ptemp.X=p.X meme problème,
je en sais pas peut etre je n'arrive pas encore a saisir la notion du pointeur et d'adresse.
merci
voila ma classe particule


class Particle //Une particule
{
public:

Particle();
int N;
TSP *PTSP2;

int rank;
int *X; // la position actuelle
int *bestX; // sa meilleure solution jusqu'a present
int *bestX_G; // meilleure solution globale
double f; // longueur de la solution actuelle
double bestF; // longueur de la meilleur solution personnelle

Velocity V; // sa vitesse acuelle

void init();

......
};
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,
Je voulais savoir l'analyse des déclarations suivantes:
int ((*t)[3])();
float (*t[4][2])(double);
int (*(*(*t())[])())[];
double *t(int*[],double);
int *((*t)[3])(char *,int (*)[]);
Ajouter un commentaire
Ce document intitulé « [C] Pointeur & tableau » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook