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
Rejoignez-nous