Jean-Michel Reghem wrote:
Soit un programme (c++) super con:
#include "stdio.h"
int main(int argc, char* argv[]) { try { int i=1/0; } catch(...) { printf("exception catched"); } return 0; }
--> compil� comme ceci gcc ./test.cpp -o test
--> on re�oit un Floating Point Exception ... c'est donc pas catch� par le catch(...)
--> autre test avec
char *pointeur=NULL; strcpy(pointeur,"truc");
--> de nouveau, au run, segmentation fault ... c'est pas catch� ...
On a essay� avec
throw(5);
--> veut pas compiler ... ... OK, on rajoute -lstdc++ (ou c++ � la place de gcc)
--> l�, ca catche correctement
On r�essaie les autres possibilit�s avec -lstdc++ ... --> m�me comportement
on a essay� -fexception : m�me comportement ...
Comment se fait-il que le catch ne fonctionne pas???
C'est gcc 3.2 ??? Avec une beta gcc 3.3 recompil�e, ca fait exactement la m�me chose
Tu comprendras ton erreur via http://www-sop.inria.fr/semir/personnel/Francis.Avnaim/Cours/Inria/C++/DeposeChap/Cpp12.html pour ce qui est de ton probl�me de catch, c'est assez bien expliqu�.
Sinon il vaut mieux faire un #include <stdio.h> et "g++ toto.c -o toto"
-- Cedric Gavage <[EMAIL PROTECTED]> http://unixtech.be - http://gavage.com - OpenPGP: 0xED325C64
-- Avec i-mode, vivez une toute nouvelle experience de la communication et des services en ligne. Plus d�info sur http://www.imode.be CyberCafe 2.0 <http://www.cybercafe.tv> Chaque Mardi 19h15 sur La 2! Desabonnement par email : <mailto:[EMAIL PROTECTED]>
