Avatar billede aashi Nybegynder
19. maj 2003 - 11:08 Der er 2 kommentarer og
1 løsning

convertering af string til en char

hvordan converterer man en string til en char,
det føglende giver fejl

string htmlstring
char *htmlchr[5000];
htmlchr = htmlstring;

eller
string htmlstring:
char htmlchr[5000];
htmlchr = htmlstring;
Avatar billede chries Nybegynder
19. maj 2003 - 11:17 #1
#include <iostream.h>
#include <string>

using namespace std;

int main()
{
    string test = "ostemanden";
    char buffer[1000];

    strncpy( buffer, test.c_str(), 1000); // max 1000 chars

    cout << buffer << endl;

    return 0;
}
Avatar billede arne_v Ekspert
19. maj 2003 - 11:23 #2
Yes.

I nogle tilfælde vil:

char *buffer;
buffer = test.c_str();

være nok.
Avatar billede olennert Nybegynder
19. maj 2003 - 12:16 #3
Og når du bruger strncpy (eller strncat, snprintf og den slags) skal du huske nul-terminering:

string test = "ostemanden";
char buffer[1000];
strncpy(buffer, test.c_str(), 1000); // max 1000 tegn
buffer[999] = 0; // Nul terminering

Det er kun et problem hvis længden af string test bliver 1000 eller mere.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester