IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

GDB me renvoie -nan(0X4000)


Sujet :

C

  1. #1
    Membre très actif
    Avatar de TheDrev
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Par défaut GDB me renvoie -nan(0X4000)
    Bonjour,

    j'ai une fonction toute bête qui reçoit un float en paramètre, je copie immediatement ce parametre dans une variable locale, quand je vais voir la valeur avec GDB, la variable vaut -nan(0X4000) ce qui bien sur fait planter le programme.

    Sachant que la valeur est passé en dur pour mes tests et que la valeur est immédatement copié en debut de fonction... je ne comprend vraiment pas ! Je ne vois plus qu'un probleme materiel (mais je n aime pas accuser le pc avant le programmeur )

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    On va accuser le développeur en premier On peut voir un bout de code qui reproduit le problème STP
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Membre très actif
    Avatar de TheDrev
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Par défaut
    C'est ok, j ai supprimé un pointeur de structure dans le code et les arguments sont bon. Le pointeur en question étant avant l'appel de la fonction, je n'avais pas fait de liens, reste a savoir ce qui ne va pas avec ce pointeur, mais en fait la pile était faussée depuis le debut...

    que veut dire -nan(0X400000) c'est une @ spéciale dans le nand ?

    merci tout de meme

  4. #4
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Je ne sais pas ce que tu appelles le "nand"

    mais "nan" a priori veut dire "Not A Number"

    Le programme suivant semble reproduire ce comportement sur Linux mais j'ai pas testé (j'ai pas de Linux sous la main ).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    #include <stdlib.h>
    #include <stdio.h>
     
     
    int main() {
      const char *s = "100";
      char *end;
      double a = strtod(s, &end);
      printf("a=%f\n", a);
     
      float b = strtod(s, &end);
      printf("b=%f\n", b);
     
      return 0;
    }
    Il se produit une erreur lors de la conversion du double généré par strtod() en float.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

Discussions similaires

  1. Jointure qui ne renvoie pas tous les enregistrements
    Par rayonx dans le forum Langage SQL
    Réponses: 12
    Dernier message: 19/07/2024, 09h33
  2. Réponses: 5
    Dernier message: 11/12/2003, 14h45
  3. Front End graphique pour GDB sous windows
    Par KORTA dans le forum GDB
    Réponses: 8
    Dernier message: 20/08/2003, 09h52
  4. Procédure stocké:Insert et renvoie de la clé primair
    Par caramel dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 17/04/2003, 09h34
  5. sum(XPATH) retourne NaN
    Par TOM-Z dans le forum XMLRAD
    Réponses: 4
    Dernier message: 19/03/2003, 13h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo