C++: error: expression in new-declarator...

truc -  
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,


J'ai un soucis concernant une partie de mon code. Voici l'erreur;
error: expression in new-declarator must have integral or enumeration type
je ne vois pas l'erreur.

voici une partie de mon code:

float nbins =9.;
float *E1= new float[nbins+1];
float *E2= new float[nbins+1];

FILE *energie= fopen("donnees.dat","r");
for(i=0; i<nbins; i++){
fscanf(energie,"%lf \t %lf \t \n",&E1[i+1],&E2[i+1]);}
for(E=E1[i]; E<=E2[i]; E+=step){
....}

Merci pour votre aide. Bonne journée

3 réponses

Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
L'erreur est simple, le compilateur te la donne :
expression in new-declarator must have integral or enumeration type
Si tu ne comprends pas un anglais aussi simple, tu va être sérieusement handicapé pour faire de la programmation !
En gros :
le terme dans la déclaration avec "new" doit avoir un typage d'entier ou d'enumeration
Et toi tu lui donne un float...
1
truc
 
bon déjà j'ai une faute dans fscanf(energie,"%lf \t %lf \t \n",&E1[i+1],&E2[i+1]);}
J'ai réctifié: fscanf(energie,"%f \t %f \t \n",&E1[i+1],&E2[i+1]);}
Mais j'ai tjrs la même erreur...
0
scaravenger Messages postés 2685 Date d'inscription   Statut Membre Dernière intervention   617
 
Comment as tu déclaré la varaible E?
0