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 :

Test sur int n�gatif: c'est comment?


Sujet :

C++

  1. #1
    Membre �clair� Avatar de Jean_Benoit
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    499
    D�tails du profil
    Informations personnelles :
    �ge : 71
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 499
    Par d�faut Test sur int n�gatif: c'est comment?
    Bonjour,

    J'essaie d'�crire un test comme �a (exo dans Vasiliu):
    for ( int k = -255 ; k <= 255 ; k++ )
    {
    tableau[k] = k;
    if ( k == 64 || k == -100 )
    {
    cout << "Tableau[" << k << "] = " << tableau[k] << "\n";
    }
    }
    *** J'ai trouv� mon erreur: tableau[-100] �a n'a pas de sens, c'est 100 postes avant le d�but du tableau.. Faut ajouter un int m qui lui bouge de - � + 255. **** R�solved!!

    (Je renseigne un tableau de -255 � +255 pour incr�menter les postes correspondants en une seule passe..)

    Parce que j'ai vu que (int) caractere '�' retourne une valeur n�gative.
    Ce doit �tre la diff�rence entre unsigned int et int li�e avec l'ASCII stock� sur 8 bits.
    En tout cas tableau[-100] retourne 2009275256, �a fait pas mon affaire.

    Merci d'avance

  2. #2
    Membre �clair�

    Profil pro
    �tudiant
    Inscrit en
    Juin 2006
    Messages
    78
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 78
    Par d�faut
    Les indices d'un tableau commencent � 0 !
    De plus, si tu parle de caract�re definie au dessus du ANSII, ca reste cod� sur un byte (qui fait dans la majorit� des cas un octet), �a prend donc 2^8 valeurs, soit de -128 � 127.
    Peut �tre que �a fonctionnerait un peu mieux avec :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    for ( int k = -128; k < 128; k++ ) {
        tableau[k+128] = k;
    /* ... */
    }
    Il y a, de plus, les balises code (et pas citation) pour du ... code.

  3. #3
    Membre �clair� Avatar de Jean_Benoit
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    499
    D�tails du profil
    Informations personnelles :
    �ge : 71
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 499
    Par d�faut
    OK OK
    Merci pour la r�ponse!

    En fait ce serait mieux de coder en Unicode, mais je l'ai jamais vu en C++.
    Tu n'aurais pas un lien sur un tutoriel par hasard?

    Merci d'avance

  4. #4
    Expert confirm�

    Inscrit en
    Novembre 2005
    Messages
    5 145
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par d�faut
    Rien ne garanti que les char soient sign�s. D�pendre de cela est une mauvaise id�e.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [JMeter] Comment faire les tests sur Jmeter ?
    Par yanker_man dans le forum Tests et Performance
    R�ponses: 1
    Dernier message: 14/08/2007, 09h35
  2. R�ponses: 1
    Dernier message: 23/05/2007, 02h45
  3. Comment faire un test sur un pchar ?
    Par Mickey.jet dans le forum Langage
    R�ponses: 2
    Dernier message: 19/03/2006, 16h53
  4. [C#] Comment savoir sur quel onglet on est ds 1 TabControl ?
    Par Gonat dans le forum Windows Forms
    R�ponses: 3
    Dernier message: 12/10/2005, 23h17
  5. Comment faire un test sur "" ?
    Par magic8392 dans le forum XSL/XSLT/XPATH
    R�ponses: 3
    Dernier message: 28/09/2005, 14h19

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