online 1
gast (50)

/ Forum / Anwendungen(Java,C++...)

Anwendungen(Java,C++...)Anwendungen(Java,C++...)

Fragevon cplsplsler vom 03.05.2022, 14:15 Options

C++:atoi

Wieso funktionirt das nicht?:

int x;
x = atoi(t1->Text);



stdlib.h ist richtig importiert.. :S
Er meckert aber, "string kan nicht in int convertirt werden" - logisch, deshalb verwende ich ja atoi... :/


Antwort schreiben

Antwort 1 von son_quatsch vom 03.05.2022, 14:36 Options

Das liegt daran, dass atoi() für altmodische Zeichenketten konzipiert ist statt neumodische Strings - das sind unterschiedliche Datentypen. Deine Lösung ist jedoch trivial:
int x;
x = atoi(t1->Text.c_str()); 

Antwort 2 von cplsplsler vom 03.05.2022, 15:25 Options

danke, funktionirt aber noch nicht. :)

er regt sich auf, dass .c_str() ->c_str() sein sollte - was auch nicht geht.
Was muss ich denn importiren, um cstr verwenden zu können?

sollte doch eigentlich alles abdecken:
#include <stdlib.h>
#include <iostream>
#include <cstring>
#include <string>



Danke! :)

Antwort 3 von pschuecho vom 03.05.2022, 18:20 Options

ich denke mal dein problem hat mit atoi() nichts zu tun

gibt mal den vollständigen quellcode hier rein.

lagere den array zugriff mal aus der atui() funktion aus, damit du den mit dem debugger bequemer anfassen kannst, zB

anstatt:

int x;
x = atoi(t1->Text);

schreibe

int x;
char *y;

y = t1->Text;
x = atoi( y);



dann kannste zu y hinsteppen und mit den zeigern spielen :-)

LG

Antwort 4 von Elefunty vom 03.05.2022, 18:55 Options

die schreibweise mit t1->Text klingt verdächtig nach Borland. Sollte also der Typ von t1->Text AnsiString sein (is standart bei borland), sollte es eig gehn mit:
int x= t1->Text.ToInt()

übrigens: falls in t1->Text keine zahl steht, wird ne exception geworfen. gab noch ne andere möglichkeit, das zu verhindern, kann ich mich aber grad nich mehr dran erinnern (hab kein borland mehr). Musste halt try-catch benutzen.

Ele

Ähnliche Themen

videoplayer für die eigene homepage
derkleinepawel  21.10.2008 - 126 Hits - 3 Antworten

Makro Paste
Subi2212  24.10.2008 - 19 Hits - 1 Antwort

Eine bat datei online ausführen
gast57  07.11.2008 - 26 Hits - 9 Antworten

Minimaler Oracle-Client zur Verbindung per .NET/C#
Schnobblz  10.11.2008 - 33 Hits - 1 Antwort

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026