Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1059 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  erreur d'execution link.exe

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

erreur d'execution link.exe

n°1027726
Elstouk
Posté le 28-03-2005 à 20:58:53  profilanswer
 

Voilà je vien de finir d'ecrire un petit sous programme et j'avais 0 erreur  :love:  :love:  
mais quand j'ai voulu l'executer j'ai eu ces 2 erreurs  
 
error LNK2001: unresolved external symbol "void __cdecl telechargerfichier(struct Client (* const)[50],class ifstream,int & )" (?telechargerfichier@@YAXQAY0DC@UClient@@Vifstream@@AAH@Z)
Debug/miniprojetsspgm2.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
 
 
 :cry:  
 
 
 
Voici le programme :
 
 
#include<iostream.h>
#include<fstream.h>
#include<stdlib.h>
#include<string.h>
 
 
const int TMAX=100;
struct Identite
{
 char nomclient[25];  
    char prenomclient[25];  
 int ageclient;  
 char statutclient;
};
 
 
struct DateEmprunt
{
 int jour;
 int mois;
 int annee;
};
 
struct Client
{
 Identite idclient;
 DateEmprunt datesignature;
 int montantemprunte;
 int txinteret;
 int duree;
 int montantinterets;
};
 
void telechargerfichier(Client TabClient[TMAX][50],ifstream fichierclient,int&nbclient);
 
 
 
 
void main()
{
 int i;
 Client tableauclient[TMAX][50];
 ifstream fiClient;
 int nombreclient;
 telechargerfichier(tableauclient,fiClient,nombreclient);
 for(i=0;i<nombreclient;i++)
 {
  cout<<tableauclient[i]<<"/n";
 }
 
}
 
 
 
 
 
void telechargerfichier(Client TabClient[TMAX][50],ifstream fichierclient,int nbclient)
{
 char nomfic[40];
 int i=0;
 cout<<"Quel est le nom du fichier ou se trouvent les donnees?";
 cin>>nomfic;
 fichierclient.open(nomfic,ios::in);
 if(fichierclient.fail())
 {
  cout<<"ouverture de "<<nomfic<<" impossible"<<endl;
  exit(-1);
 }
 else
 {
  while(fichierclient.eof()==0)
  {
   fichierclient>>TabClient[i]->idclient.nomclient;
   fichierclient>>TabClient[i]->idclient.prenomclient;
   fichierclient>>TabClient[i]->idclient.ageclient;
   fichierclient>>TabClient[i]->idclient.statutclient;
   fichierclient>>TabClient[i]->datesignature.jour;
   fichierclient>>TabClient[i]->datesignature.mois;
   fichierclient>>TabClient[i]->datesignature.annee;
   fichierclient>>TabClient[i]->montantemprunte;
   fichierclient>>TabClient[i]->txinteret;
   fichierclient>>TabClient[i]->montantinterets;
   i++;
  }
  nbclient=i;
  cout<<"Il y a "<<nbclient<<" clients";
 }
 fichierclient.close();
}

 
 
Voilà si vous avez une idée n'hesitez pas ^^
 

mood
Publicité
Posté le 28-03-2005 à 20:58:53  profilanswer
 

n°1027730
Taz
bisounours-codeur
Posté le 28-03-2005 à 21:02:12  profilanswer
 

oh du C
 
passe ton istream par & déjà.
 
 
ensuite while(fichierclient.eof()==0)  
 
c'est pas bon.
 
teste chaque >>
 
if (stream_in >> var) { ca baigne } else { marne }
 
et le type de retour de main est int
 
et remplace tes char* par des std::string


Message édité par Taz le 28-03-2005 à 21:02:36
n°1027737
chrisbk
-
Posté le 28-03-2005 à 21:05:18  profilanswer
 

c'st normal que ca link pas, tu declares un :
 
void telechargerfichier(Client TabClient[TMAX][50],ifstream fichierclient,int &nbclient)  
 
et tu définies un  
void telechargerfichier(Client TabClient[TMAX][50],ifstream fichierclient,int nbclient)  
 
(note l'absence de ref pour nbclient)
 
du pt de vue du compilo c'st pas la meme chose
 


---------------
NP: HTTP Error 764 Stupid coder found
n°1027750
Elstouk
Posté le 28-03-2005 à 21:10:12  profilanswer
 

yoooo  
 
jai pas tout compris ton truc (paske je suis nul?  :cry: )  
 
le truc ifsrteam je pense avoir compris  
je dois mettre ifstream&nomdufichier ??  
 
sinon en fait en cours on s'est jamais vraiment servi de fichier et le reste de tes explications je pige pas trop

n°1027757
chrisbk
-
Posté le 28-03-2005 à 21:12:20  profilanswer
 

bon melange pas tout
d'un coté y'a ton pb, d'un autre les recommandations de taz
pour ton pb, je t'ai filé la solution. Les recommandations de taz sont la pour que ton code deviennent moins cracra, ce qui ne serait pas un mal [:twixy]
 
il te dit de passer le istream par ref plutot que par valeur, de verifier qu'une lecture a pas merdé et surtout, de laisser tomber ces engeances de Satan que sont les char * pour les remplacer par les benis std::string
 
 


---------------
NP: HTTP Error 764 Stupid coder found
n°1027759
Taz
bisounours-codeur
Posté le 28-03-2005 à 21:12:52  profilanswer
 

passe les fichiers par références. Pas par copie. D'ailleurs, pourquoi à quoi il te sert ce paramètre dans ta fonction ?

n°1027935
Elstouk
Posté le 28-03-2005 à 23:10:13  profilanswer
 

merci les gens :)
 
euh taz ta question c pkoi j'ai mi le fichier en parametre c bien ca?
c parce qu'en fait dans mon mini projet il est demandé de le mettre en paramettre donc j'ecoute  :p

n°1027939
verdoux
And I'm still waiting
Posté le 28-03-2005 à 23:20:46  profilanswer
 

Non taz il te dit qu'il faut suivre les cours plus sérieusement sinon tu vas avoir des problèmes plus tard face à des roumains 10x plus compétents et 10x moins chers.


Message édité par verdoux le 28-03-2005 à 23:21:00

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  erreur d'execution link.exe

 

Sujets relatifs
[HELP - VB] Erreur d'exécution '13' : type incompatibleERREUR LOR DE L'INSTALLATION DE VB6
message erreur perl[VB6] capter une erreur
[jsp] erreur importerreur vb
erreur JCombobox ?[JBuilder] Execution d'un programme (noob inside)
[Delphi + MySQL] Erreur E_FAIL, comment contourner ? 
Plus de sujets relatifs à : erreur d'execution link.exe


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR