dud1410
Messages postés31Date d'inscriptionlundi 25 août 2008StatutMembreDernière intervention 9 novembre 2009
-
25 août 2008 à 10:10
dud1410
Messages postés31Date d'inscriptionlundi 25 août 2008StatutMembreDernière intervention 9 novembre 2009
-
26 août 2008 à 15:09
salut tout le monde,
voici mon code,
for (int kt = 0; kt < numTrafficTypes_; ++kt)
{
for (int i = 0; i < max_n_users[kt]; ++i)
{
FILE *fin1=fopen("D:\\oppack\\min_inter_tti.txt","rb");
counter++;
while(!feof(fin1))
{
lu=fscanf(fin1,"%d %d",&UE_categorie1,&min_inter_tti);
if ( UE_categorie1==categorie)
{
tab1.Min_inter_TTI=min_inter_tti;
break;
}
}
fclose(fin1);
.............
tout marche tres bien,mais une fois counter atteint 1744 jobtients une erreur:EAcess Violation at adress ....write of adress.....
est-ce que quelqu'un peut m'aide !
merci d'avance
cs_neone
Messages postés96Date d'inscriptionmercredi 23 novembre 2005StatutMembreDernière intervention 7 mars 2011 25 août 2008 à 13:55
Bonjour,
a mon avis. tu ouvre une seule fois le fichier au début avant le "for". aprés tu le ferme une fois ta fini. d'un autre coté la dimension de ton tableau doit étre >= nombre de données que tu vas extraire du fichier et normalement si ta pas d'autre prob de dimension ça devrait marché.
boncourage
dud1410
Messages postés31Date d'inscriptionlundi 25 août 2008StatutMembreDernière intervention 9 novembre 2009 25 août 2008 à 15:24
je suis entrain de remplir un vecteur de queue exp;
queue q;
std::vector<queue > table_queue;
lorsque je veux remplir table_queue[i] j'ai besoin de faire table_queue.push_back()!!!!
est ce que quelq'un a une autre idee ne prenant pas beaucoup de temps!
merci d'avance encore une fois!!!!
cs_neone
Messages postés96Date d'inscriptionmercredi 23 novembre 2005StatutMembreDernière intervention 7 mars 2011 25 août 2008 à 15:30
tu peux utiliser les iterator c plus interessant. au moins tu sais ou t'ajoute pas comme push_back() ça fait qu'empiler sur la fin . de toute façon t obligé d'un itertor pour reparcourir ta queu lol :).
example:
vector v;
for (vector::iterator it = v.begin(); it!=v.end(); ++it) {
cout << *it << endl;
}
boncourage
dud1410
Messages postés31Date d'inscriptionlundi 25 août 2008StatutMembreDernière intervention 9 novembre 2009 25 août 2008 à 15:48
lol!voila ce qui arrive vraiment!!!
a chaque fois que je traverse les deux boucle:
for (int kt = 0; kt < numTrafficTypes_; ++kt)
{
for (int i = 0; i < max_n_users[kt]; ++i)
{
FILE *fin1=fopen("D:\\oppack\\min_inter_tti.txt","rb");
counter++;
.........
j'ai des parametres que j'alloue en memoire a la fin comme par exemple:
a[kt].b[i].c[j]=(int*)calloc(a[kt].b[i].d[j]*100, sizeof(int));
if (!a[kt].b[i].c[j]) return false;
quand ja'i obtenu l'erreur access violation j'ai eu recours a faire:a[kt].b[i].d[j]*200 et ca a marche!
est ce que ca peut etre un probleme d'allocation de memoire???