Webmaster Forum Logo Part 1 Webmaster Forum Logo Part 2
Webmaster Forum Logo Part 3
     
 
  :: Anmeldung

Benutzername:

Registrierung...

Passwort:

Passwort vergessen?

angemeldet bleiben


  
  :: Umfrage
Welche sozialen Netzwerke benutzt du regelmäßig?

 Facebook
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 73%
 keines
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 22%
 Google+
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 19%
 Twitter
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 11%
 Xing
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 schülerVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 5%
 meinVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 studiVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 MySpace
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%
 LinkedIn
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%

 ges. 392 Stimmen
 
  :: Buttons

Valid XHTML 1.0 Transitional

quibb

Foren As

Dabei seit: 12.05.2004

Beiträge: 88

 

1 Zum Seitenanfang

Freitag, 26. November 2004, 20:41

[c++] string to int

gibt es eine möglichkeit das wenn in einem string z.b.

str = "56";

steht. diesen in ein int zu verwandeln ?

also wörtlich

int x = str;

x = 56;

???

vielen dank schonmal

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »quibb« (26. November 2004, 20:41)

 

Gimli

Kaiser

Dabei seit: 12.02.2003

Beiträge: 1 375

 

2 Zum Seitenanfang

Freitag, 26. November 2004, 20:43

RE: [c++] string to int

Weshalb musst du das überhaupt umwandeln? Eine Zahl als string zu speichern ist eine denkbar schlechte Lösung.

Daher die frage: muss das wirklich sein?
Oder lässte es sich vermeiden die zahl als String zu speichern?

mfg Gimli
"Linux is evolution, not intelligent design." - Linus Torvalds
 

quibb

Foren As

Dabei seit: 12.05.2004

Beiträge: 88

 

3 Zum Seitenanfang

Freitag, 26. November 2004, 20:48

ja das hat mir den denkanstoß gegeben.

ich programmiere gerade einen leveleditor für mein spiel...
die koordinaten für objekte werden aus eine externen datei zeilenweise eingelesen, jede zeile in ein "char bla[x]"

diesen habe ich dann in einen string geschrieben und woltte ihn dann wieder in ein int verwandeln hehe

wahrlich dumm

meine erste lösung ist

int x = (int)bla[x];


so sollte der char also die zahl die in ihm steht doch korrekt übergeben werden oder?
 

Gimli

Kaiser

Dabei seit: 12.02.2003

Beiträge: 1 375

 

4 Zum Seitenanfang

Freitag, 26. November 2004, 20:54

Warum keinen int-array?

Quellcode

1
int i[5]


wenn es doch eh nur koordinaten sind.
ansonsten: denke dass dein weg gehen würde, ist aber nicht optimal (ausserdem bin ich nicht allzu fit in C )

mfg Gimli
"Linux is evolution, not intelligent design." - Linus Torvalds
 

quibb

Foren As

Dabei seit: 12.05.2004

Beiträge: 88

 

5 Zum Seitenanfang

Freitag, 26. November 2004, 21:16

das mit dem char in ein int array schreiben mache ich jetzt, wird auch nich anders gehen.
problem is nur das wenn ich

int x[bla] = (int)zeile[bla];

wobei x das integer array ist das die zahl aus der char zeile übernehmen soll.

mache erhalte ich sinnlose werte also nicht der in der zeile wirklich steht...
 

Gimli

Kaiser

Dabei seit: 12.02.2003

Beiträge: 1 375

 

6 Zum Seitenanfang

Freitag, 26. November 2004, 21:27

Du liest eine datei aus:

warum arbeitest du da überhaupt mit char?

kannst du doch direkt als int/decimal auslesen, zb mit:

Quellcode

1
fscanf("%d", &zahl);


oder gar zeilenweise (ohne fgets):

Quellcode

1
2
3
DATEI = fopen usw...
while((fscanf(DATEI, "%d\n", &zahl)) != EOF )
    fprintf(stdout, "%d\n", zahl);


100% ungetestet!

mfg Gimli
"Linux is evolution, not intelligent design." - Linus Torvalds

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Gimli« (26. November 2004, 21:27)

 

quibb

Foren As

Dabei seit: 12.05.2004

Beiträge: 88

 

7 Zum Seitenanfang

Freitag, 26. November 2004, 21:33

naja mein code sieht halt so aus mit dem von dir kann ich noch nich soviel anfangen ^^

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void drawMap::UserEingabe()
{
	ifstream datei("level01.dat");

	char zeile[5];

	int i = 0;

	while(datei.getline(zeile, 5))
	{
		drawMap::objekt[i] = (int)zeile;
		i++;
		drawMap::anzahl_objekte++;
	}

}


in zeile steht immer die gerade durchlaufene zeile...
diese soll weil sie ja eine zahl ist in objekt gespeichert werden...
nunja...
vielleicht ist die sache auch kompletter schwachsinn...

die oben genannte funktion nimmt leider als "zeile" nunmal nichts an ausser ein char. deswegen kompliziert sich das auch momentan alles irgentwie..

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »quibb« (26. November 2004, 21:36)

 

Gimli

Kaiser

Dabei seit: 12.02.2003

Beiträge: 1 375

 

8 Zum Seitenanfang

Freitag, 26. November 2004, 21:42

Mein Code ist C, nicht C++.

Najo, wenns mir der momentanen Funktionnicht geht musst du halt evtl ne bessere suchen :D

Viel mehr werde ich dir nicht mehr helfen können.
Weil von C++ habe ich 0 Ahnung und bei C fehlt mir derzeit die zeit mich intensiv damit zu beschäftigen, bzw weiterzulernen.

mfg Gimli
"Linux is evolution, not intelligent design." - Linus Torvalds
 

quibb

Foren As

Dabei seit: 12.05.2004

Beiträge: 88

 

9 Zum Seitenanfang

Freitag, 26. November 2004, 21:44

ich mach heut erstmal schluss ;) 16 stunden am stueck programmieren is auch mal genug.
ich setzt mich morgen wieder dran und werde berichten ^^

also dann vielen dank
quibb
 

jperl

Super Moderator

Dabei seit: 09.04.2003

Beiträge: 3 453

 

10 Zum Seitenanfang

Freitag, 26. November 2004, 22:07

also ich bin jetzt definitiv zu faul mir alle beiträge durchzulesen.

ich sag dir einfach mal, dass es die funktion

atoi() <- ascii to int

gibt mit deren hilfe du das machen kannst.

jperl
Konfuzius [chinesischer Philosoph (551 - 479 v. Chr.)]
Das Entscheidende am Wissen ist, daß man es beherzigt und anwendet.
 

quibb

Foren As

Dabei seit: 12.05.2004

Beiträge: 88

 

11 Zum Seitenanfang

Samstag, 27. November 2004, 20:40

danke mit der funktion klappt das ganze wunderbar!

gruesse
quibb
 

jperl

Super Moderator

Dabei seit: 09.04.2003

Beiträge: 3 453

 

12 Zum Seitenanfang

Sonntag, 28. November 2004, 00:18

Zitat

Original von quibb
danke mit der funktion klappt das ganze wunderbar!

gruesse
quibb


keine ursache ;)
habs doch gern getan
jperl
Konfuzius [chinesischer Philosoph (551 - 479 v. Chr.)]
Das Entscheidende am Wissen ist, daß man es beherzigt und anwendet.