Declarer un tableau de taille variable

Résolu
cs_Seb33300
Messages postés
84
Date d'inscription
mardi 20 septembre 2005
Statut
Membre
Dernière intervention
7 février 2010
- 15 janv. 2007 à 13:56
luhtor
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
- 15 janv. 2007 à 18:13
Bonjour

comment déaclarer un tableau avec un taille déclaré dans une variable ?

taille = 10;
tableau[taille]; ne marche pas

merci

6 réponses

tibob51
Messages postés
268
Date d'inscription
vendredi 30 avril 2004
Statut
Membre
Dernière intervention
13 mai 2013
2
15 janv. 2007 à 14:39
int taille=10;
int *tableau;

tableau=new int[taille];

delete[] tableau;//a ne pas oublier, pour liberer la mémoire occupé du tableau,une foi que tu n'en a plus besoin bien sur
3
aurelien2723
Messages postés
181
Date d'inscription
jeudi 12 janvier 2006
Statut
Membre
Dernière intervention
26 janvier 2011
1
15 janv. 2007 à 14:01
Salut!

C'est normal, la taille d'un tableau se définie à son initialisation.
Il faut donc que tu utilises la fonction malloc(), qui permet une allocation dynamique.
0
aurelien2723
Messages postés
181
Date d'inscription
jeudi 12 janvier 2006
Statut
Membre
Dernière intervention
26 janvier 2011
1
15 janv. 2007 à 14:51
a oui forcément c'est plus simple :P
En supposant qu'il fait bien du C++ et non du C  ;) ...
0
tibob51
Messages postés
268
Date d'inscription
vendredi 30 avril 2004
Statut
Membre
Dernière intervention
13 mai 2013
2
15 janv. 2007 à 14:59
ben sinon il c'est trompé,dans la catégorie pour poster ce message
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
aurelien2723
Messages postés
181
Date d'inscription
jeudi 12 janvier 2006
Statut
Membre
Dernière intervention
26 janvier 2011
1
15 janv. 2007 à 15:12
a oui effectivement :P

Excuse.
Bon ok je me tais  ->[]
 :)
0
luhtor
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
6
15 janv. 2007 à 18:13
int variable = 8;
char tab[variable]

fonctionne sur certaine norme je crois.
En tout cas, il me semble que cela fonctionne et soit correct:

void function(int val)
{
float tab[val];
}

Je sais plus si c'est le cas du C/C++, mais sur certain langage c'est bien accepté. Dans le meme genre faudrait voir avec:

{
...
int value = 8;
...
{
float tab[value];
...
}
...
}

Encore une fois, faudrait vérifier.
0