Erreur de segmentation suite au passage à SuSE 8.1 - C++ - Programmation
Marsh Posté le 04-02-2003 à 17:19:57
euuuhhhhh
Marsh Posté le 04-02-2003 à 17:24:03
Utilises les balises "cpp" s'il te plait et pas les balises "citation"
Code :
|
CSti::GetInverterVin prend en paramètre une reference sur un char * ??? C'est vraiment ce que tu veux ?
Envisage d'abandonner completement les char * au profit des string
Marsh Posté le 04-02-2003 à 18:10:54
Non, je ne dois pas forcément garder des char*,
mais je ne pense pas que ce soit l'origine du problème.
Je modifierais tout de même ça demain.
Marsh Posté le 04-02-2003 à 18:12:54
C'est bien plus clair avec les balises cpp....
Marsh Posté le 04-02-2003 à 18:30:10
Ce genre d'erreur ressemble a une corruption de pile ou même du tas et c'est pour cela que je te demandes la raison de cette reference
Marsh Posté le 05-02-2003 à 09:16:01
J'ai résolu le problème.
J'utilisais un char * qui n'était pas initialisé.
J'imagine que lors de la première utilisation, l'OS lui attribuait une taille précise, et que par la suite je dépassais cette taille......ou un truc du genre.
Pour ce qui est des string, je connais, en visual C++ les CString,
mais en C++ qu'est-ce qu'on doit utiliser ?
Parce que string n'est pas reconnu comme un tout,
String non plus, CString non plus ??
Marsh Posté le 05-02-2003 à 10:29:56
Code :
|
ou
Code :
|
Marsh Posté le 06-02-2003 à 09:23:42
Désolé, mais ça ne marche toujours pas....
Code :
|
Je suis sous Linux, y a peut-être une différence...? !
Ah, autre question :
pourquoi mets-tu
Code :
|
et pas
Code :
|
Marsh Posté le 04-02-2003 à 16:49:08
J'ai un programme qui fonctionnait bien sous SuSE 7.2
Je viens d'installer SuSE 8.1, et là ça va plus.
Voici la partie du code.
C'est une méthode d'une classe, et c'est là que ça plante,
lorsque j'essaye d'affichier ou d'utiliser le float (f_ret en l'occurence) :
Donc je reçois une donnée en chaine de caractères.
Je l'affiche, pas de problème.
Je la transforme en entier, et j'affiche, pas de problème.
Mais dès que j'utilise un float, ça va plus.
Encore plus bizarre (et c'est peut-être de là que vient l'erreur.)
Si j'ajoute la ligne :
ça ne va plus non plus.
Comme si àje ne pouvais pas utiliser de float.
.....une idée ???????
Message édité par warp le 04-02-2003 à 18:12:25
---------------
Il n'est pas nécéssaire de réussir pour persévérer.