/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
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
[c++]strings
Fra : Allan Eriksen


Dato : 29-04-03 00:30

Hej

Jeg har en funktion i c++ som tager en string ind som parameter:

void fktA(string)

Inde i en anden funktion skal jeg kalde fktA med en string som jeg skal
sammensætte af noget tekst og nogle Integers som gives med denne funktion
som parametre:

void fktB(int A, int B){
   fktA("integerne var,(her skal int A indsættes),(og her int B)");
}

Dette burde være ret simpelt, men jeg kan bare ikke få det til at virke,
da jeg ikke ved hvordan man indsætter variable ind i en string. Ved char*
kan man jo bruge:

fktA("integerne var,%d,%d",A,B)

men det virker selvfølgelig ikke, men desværre er det ikke lykkedes mig
at finde ud af hvordan man gør lignende med strings.

Håber nogen kan hjælpe...på forhånd tak
mvh
Allan

 
 
Robert Larsen (28-04-2003)
Kommentar
Fra : Robert Larsen


Dato : 28-04-03 23:50

Allan Eriksen wrote:
>
> void fktB(int A, int B){
>    fktA("integerne var,(her skal int A indsættes),(og her int B)");
> }
>
> Dette burde være ret simpelt, men jeg kan bare ikke få det til at virke,
> da jeg ikke ved hvordan man indsætter variable ind i en string. Ved char*
> kan man jo bruge:
>
> fktA("integerne var,%d,%d",A,B)


Brug en stringstream:
-------------------------------------------------------
#include <sstream>
#include <iostream>

using namespace std;

void fktB(int a, int b)
{
ostringstream ostr;
ostr << "Integerne var " << a << " og " << b;

string str = ostr.str();

cout << str << endl;
}

int main(int argc, char ** argv)
{
fktB(10, 100);
return 0;
}
-------------------------------------------------------
Hvilket giver:

[robert@codemachine robert]$ ./test
Integerne var 10 og 100


Robert


Søg
Reklame
Statistik
Spørgsmål : 177459
Tips : 31964
Nyheder : 719565
Indlæg : 6408193
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste