/ Forside/ Teknologi / Udvikling / C/C++ / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
"Konvertering" fra char* til int
Fra : RFS
Vist : 384 gange
20 point
Dato : 14-10-03 13:35

Hej der, temlig ny i c++ og skal skrive et program der indlæser visse værdier fra commandprompten. Værdierne kommer (skægt nok) som char *-array. Jeg skal imidlertid havde værdierne over i int variabler. Hvordan gør man det?
Tak for hjælpen

 
 
Kommentar
Fra : elprebo


Dato : 14-10-03 14:05

aner ikke on det virke...men jeg vill prøve noget som:

CharToInt


Sådan noget virker i hvert fald i Delphi

Kommentar
Fra : RFS


Dato : 14-10-03 14:15

Jeg fandt løsningen på et andet site.
int atoi(char* arr) . Det skal dog siges at denne funktion har status af "depriciated".

Kommentar
Fra : BertelBrander


Dato : 14-10-03 20:18

Du bør bruge strtol().

Kommentar
Fra : RFS


Dato : 14-10-03 20:34

som ikke tager nogle argumenter!

Kommentar
Fra : BertelBrander


Dato : 14-10-03 20:39

Jo, strtol tager argumenter, slå den op i din kompilers dokumentation eller læs her:

http://www.hmug.org/man/3/strtol.html

Eller:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_crt_strtol.2c_.wcstol.asp

Kommentar
Fra : lillemikkel


Dato : 22-01-04 20:52

Jeg forstår ikke helt spørgsmålet... I cpp vil man have en heltalsvariable og indlæse tallet i den på sædvanlig vis.
ex.

int a;
cin >> a;

man læser så ud på skærmen med...

cout << "a: " << a;

Konferencen her på siden ser ud til at handle om (ansi) c der som bekendt også kan skrives i en cppfil da sidst nævnte sprog startede som en udviddelse af c. Jeg er ikke helt sikker på hvad dit problem er, men jeg tror følgende testprogram løser dine kvaler...

int main(void)
{
//Jeg gaa ud fra at dit array har formen
char *a[10]; //magisk tal

//taellevariable skal deklareres ind init af noget som helst
int i;

//et array jeg vil smide vaerdierne over i
int b[10];

//jeg smaekker lige lidt tal ind... det klarer dit program for dig
for(i=0; i<10; i++) {
a[i]=(i+1);
}

//nu smider jeg tallene over i intarrayet
for(i=0; i<10; i++) {
//der castes inden vaerdien kan laegges ned...
b[i]=(int)a[i];
}

printf("%d\n",b[4]); //skriver indholdet fra plads 4 (5'te plads) i intarrayet

return 0;
}



håber du blev klogere... Hvis ikke så prøv at komme med et lille ex.

mvh Lillemikkel //Jeg elsker SødeLouise!!!

//ps mor send mere kaffe...


Du har følgende muligheder
Dette spørgsmål er blevet annulleret, det er derfor ikke muligt for at tilføje flere kommentarer.
Søg
Reklame
Statistik
Spørgsmål : 177435
Tips : 31962
Nyheder : 719565
Indlæg : 6408016
Brugere : 218879

Månedens bedste
Årets bedste
Sidste års bedste