Message d'erreur

Résolu/Fermé
Voking Messages postés 21 Date d'inscription dimanche 14 avril 2019 Statut Membre Dernière intervention 13 octobre 2019 - Modifié le 14 avril 2019 à 11:22
Voking Messages postés 21 Date d'inscription dimanche 14 avril 2019 Statut Membre Dernière intervention 13 octobre 2019 - 14 avril 2019 à 15:37
Bonjour,
en codant la ligne

char texte[lgr] = '.';


en C++, le message d'erreur suivant apparaît:

error: ISO C++ forbids variable length array 'texte' [-Wvla]|

quelqu'un peut-il me dire ma faute? ;)

1 réponse

NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 331
Modifié le 14 avril 2019 à 12:11
Simple quotes ' c'est pour un char
Double quotes " c'est pour un tableau de char (une chaine de caratères)

Si tu déclare+initialise un tableur, tu ne peux pas lui assigner juste un caractère.

0
Voking Messages postés 21 Date d'inscription dimanche 14 avril 2019 Statut Membre Dernière intervention 13 octobre 2019 1
14 avril 2019 à 13:00
Bonjour, en fait j'ai déjà initialisé un string, nommé " texte ", ensuite je voudrais lui ajouter un caractère, le " . " en définissant " texte[lgr] " de type char, avec " lgr " représentant le nombre de caractères du string.
Est-ce la bonne méthode?
0
yg_be Messages postés 22724 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 25 avril 2024 1 476 > Voking Messages postés 21 Date d'inscription dimanche 14 avril 2019 Statut Membre Dernière intervention 13 octobre 2019
14 avril 2019 à 13:11
bonjour, si tu as déjà déclaré texte (comment?), inutile de le déclarer à nouveau.
0
Voking Messages postés 21 Date d'inscription dimanche 14 avril 2019 Statut Membre Dernière intervention 13 octobre 2019 1
14 avril 2019 à 13:26
Bonjour, j'ai déclaré " texte " de type string en amont, et je voulais introduire un nouvel élément dans celui-ci, qui se grefferait en dernière position. J'ai donc fait la supposition que c'était un élément de type char, et que sa position serait " lgr ", ce qui justifierait le nom " texte[lgr] " ...
0
yg_be Messages postés 22724 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 25 avril 2024 1 476 > Voking Messages postés 21 Date d'inscription dimanche 14 avril 2019 Statut Membre Dernière intervention 13 octobre 2019
Modifié le 14 avril 2019 à 14:03
je ne comprends pas dans quel but tu fais une déclaration. si tu veux faire une assignation, inutile de commencer avec un type.
modifies-tu un caractère dans la string texte, ou bien l'allonges-tu?
moins tu montres ton code, moins nous pouvons t'aider.
0
Voking Messages postés 21 Date d'inscription dimanche 14 avril 2019 Statut Membre Dernière intervention 13 octobre 2019 1 > yg_be Messages postés 22724 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 25 avril 2024
14 avril 2019 à 15:37
Le problème a finalement été résolu, désolé du dérangement :/ voici tout de même le screen du code, si vous y tenez. Mais je comprends mon erreur: il suffisait d'allonger le string et non déclarer un char supplémentaire à insérer dedans.
0