Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » itoa

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
23.08.2006, 21:05 Uhr
~itoa
Gast


hi leute, habe ein porblem mit itoa
ich will einen int in char umkonvertieren um dann zu prüfen ob die int eingabe zwischen 0 und 9 liegt.

wenn ich das wie unten eingebe bekomme ich von meinem compiler (dev-c++ 4.9) die meldung "ISO C++ forbids comparison between pointer and integer"
an der stelle des ifs schleifenkopfs

was mach ich falsch?

der soll nur bei einer eingabe von 0bis9 ok ausspucken und bei allem anderen ob zahl oder buchstabe ein falsch



C++:
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>

int main()
{
    
    int i;
    char j[256];
    
    cout << "hallo. bitte eingabe: " << endl;
    cin >> i;
    
    itoa(i,j,16);

    if(j>0 && j<9)
    {
        cout << "ok " << endl;
    }
    else    
    {
        cout << "falsch " << endl;
    }
    return 0;

}



gruss thomas

Dieser Post wurde am 23.08.2006 um 21:17 Uhr von Pler editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
23.08.2006, 21:16 Uhr
Pler
Einer von Vielen
(Operator)


Hä? Was machst du denn?

Vergleich doch gleich i! Du kannst doch nicht einfach ein String mit ner Zahl Vergleichen.
Wenn du das jetzt nicht einsiehst, fang noch mal von ganz vorn an.

Code:
if( (i>0) && (i<9) )


Und bitte benutz die code-Tags selbst!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
23.08.2006, 22:51 Uhr
enriico



ich schliesse mich der meinung von Pler an:

schau dir mal ganz genau den zusammenhang zwischen int und char an!


C++:
#include <iostream>

int main(){
    char c = 'a';
    int i = c;
    cout << i << endl; //Ausgabe 97
}



wenn du den buchstaben 'a' als typ char speicherst, dann hat dieser automatisch den wert 97 und das ist überall so. egal ob du in deutschland, in der schweiz oder in polen lebst!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
23.08.2006, 23:10 Uhr
Pler
Einer von Vielen
(Operator)


@enriico
guter Beitrag.

Nochmal zu meinem Beitrag:
Du musst die Fehlermeldung die du hattest noch nicht verstehen. Das hast was mit Zeigern zu tun und kommt - falls du ein Buch oder sowas benutzt - erst viel später. Aber das was enriico geschrieben hat sollte dir schon klar sein.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
24.08.2006, 01:02 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Ansonsten solltest du C und C++ nicht mischen, stdio.h ist C und iostream ist C++. Wenn du wirklich den Inhalt eines char in ein int schieben willst, nimm dieses grandiose snippet von virtual !
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
24.08.2006, 08:46 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


isdigit...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
24.08.2006, 22:21 Uhr
Spacelord
Hoffnungsloser Fall



Zitat von enriico:

wenn du den buchstaben 'a' als typ char speicherst, dann hat dieser automatisch den wert 97 und das ist überall so. egal ob du in deutschland, in der schweiz oder in polen lebst!



Zitat von Pler:

@enriico
guter Beitrag.



Aber leider so nicht richtig.
Schau dir mal std::locale an und die Motivation die dahinter steht.
Damit wollen die Standardburschis dem Umstand Rechnung tragen dass es eben auch noch andere Zeichensätze fernab von ASCII und Unicode geben könnte.

Gruss Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: