try catch foireux

try catch foireux - C - Programmation

Marsh Posté le 13-12-2005 à 19:27:18    


 
    Pourquoi  ca marche po?
 
FILE * randomEtat;
 
try {
randomEtat = fopen("etat", "rb" );
gsl_rng_fread (randomEtat,r);
fclose(randomEtat);
}catch  (...)
  {
    fclose(randomEtat);
  }  
 
 
 
windows il dit ca quand il n'y a pas le fichier "etat" dispo:   "code.exe a rencontré un problème et doit fermer. Nous vous prions de nous excuser pour le désagrément encouru."

Reply

Marsh Posté le 13-12-2005 à 19:27:18   

Reply

Marsh Posté le 13-12-2005 à 20:12:08    

Parce que c'est du C++

Reply

Marsh Posté le 13-12-2005 à 20:16:00    

arrr  !  ben comment on fait pour faire un try catch en c? J'ai mon fichier d'état du generateur de nombres qui sera pas forcement présent, et sans lui, ca donne toujours la mem chose forcement...

Reply

Marsh Posté le 13-12-2005 à 20:19:48    

Du caca dans l tuyau a écrit :

arrr  !  ben comment on fait pour faire un try catch en c? J'ai mon fichier d'état du generateur de nombres qui sera pas forcement présent, et sans lui, ca donne toujours la mem chose forcement...


setjmp()/longjmp() have fun :D

Reply

Marsh Posté le 13-12-2005 à 20:23:46    

huchh  j'aime pas trop ce qu'il en dit de ca google !

Reply

Marsh Posté le 13-12-2005 à 20:27:58    

non mais tu peux te contenter de tester la valeur de retour de fopen, si c'est NULL, ca a foire, il te reste a agir en consequence et voila (la cause de l'erreur est contenu dans errno)

Reply

Marsh Posté le 13-12-2005 à 20:28:43    

ha ben voila qui me parle plus ! je teste

Reply

Marsh Posté le 13-12-2005 à 20:31:27    

hé ben voila!   ca marche au poil . C'était tout simple. Je pensait que le fait d'invoquer fopen faisait deja une erreur.. bon, merci  :-))

Reply

Marsh Posté le 13-12-2005 à 20:44:46    

[:el g]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed