Violation d'acc�s C++Builder
Bonjour,
dans le cadre d'une �tude sur la programmation C++ (EDUCATEL), je dois cr�er une application de gestion de base de donn�es pour une pharmacie.
Lors de mon entr�e dans le menu fournisseur je d�sire "r�cup�rer" les donn�es de mon fichier Fournisseurs dans un tableau d'objets fournisseur.
Voici une partie de mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| void __fastcall TAdminFournisseurs::FormShow(TObject *Sender)
{
/*
Déclaration des variables locales*/
char* tampon;
char temp[100];
char t;
unsigned int occ,i;/*
Ouverture du fichier en lecture seule */
afFournisseur=fopen("Fournisseurs","r");/*
allocation de mémoire pour le tableau d'objets fournisseur */
ListFourn=new fournisseur[1];
NbrFiches=0;/*
Début de condition SI(eff_FC_I01) */
if(afFournisseur)
{/*
Début de boucle FAIRE...TANT QUE (eff_FC_I01_D02)*/
do
{
AjouteUneFiche();
ListFourn[NbrFiches-1].SaisieFiche(NbrFiches-1);
occ=0;
do
{
fscanf(afFournisseur,"%c",t);
temp[occ]=t;
occ++;
}
while(t!='\t' && t!='\n');
tampon=new char[++occ];
for(i=0;i<occ-1;i++)
tampon[i]=temp[i];
tampon[occ-1];
ListFourn[NbrFiches-1].SaisieNom(tampon);
....} |
Lorsque je compile mon application, le message d'erreur suivant apparait :
Citation:
Le projet TravRecap.exe a provoqu� une classe d'exception EAccessViolation avec le message 'Violation d'acc�s � l'adresse 32664354 dans le module 'CC3260MT.DLL'. Ecriture de l'adresse 00000000'. Procesus stopp�. Utilisez Pas-�-pas ou Ex�cuter pour continuer.
Puis, le programme reste bloqu� au niveau de la ligne de mon fscanf.
Je ne vois pas o� j'ai pu blairer puisque j'alloue de l'espace � chaque variable. Peut �tre est-ce dans mon utilisation du fscanf ?
Merci de m'aider un peu.