rada string to u_char

Programovacie jazyky, rady, poradňa...
Forsaken
King
King
Používateľov profilový obrázok
Príspevky: 1918
Registrovaný: 14 mar 2010, 0:39

rada string to u_char

Príspevok od používateľa Forsaken »

zdravim znova :o

potrebujem dostat string na u_char mozete mi pomoct ?

Kód: Vybrať všetko

string string1 =  "bla bla";
char temp[128] ;
strcpy(temp, string1.c_str());
char str2[128];
strcpy(str2, temp);
cout << str2 << endl;
1254|error: invalid conversion from 'u_char*' to 'char*'|
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: rada string to u_char

Príspevok od používateľa audiotrack »

nestačilo by to pretypovať namiesto tých kopírovaní? Niečo ako temp=(char *)(string1.c_str());
inak nechápem načo tam máš temp, a neprekopíruješ to rovno do str2
Forsaken
King
King
Používateľov profilový obrázok
Príspevky: 1918
Registrovaný: 14 mar 2010, 0:39

Re: rada string to u_char

Príspevok od používateľa Forsaken »

//autoeditácia príspevku (09 Máj 2011, 11:40)
:!: este niekto nejake napady, potrebujem:
(to co som pisal nejde)

pretypovat STRING na u_char

K :plus: ista

//autoeditácia príspevku (09 Máj 2011, 21:17)
keby dakto chcel vediet...

tak som to pretypovane vyriesil zapisom a nacitanim do binarneho suboru..
johny3212
Star
Star
Používateľov profilový obrázok
Príspevky: 532
Registrovaný: 17 feb 2008, 19:56
Bydlisko: Terchova
Kontaktovať používateľa:

Re: rada string to u_char

Príspevok od používateľa johny3212 »

Staci spravit toto

Kód: Vybrať všetko

    string lala = "aaaa";
    u_char * a = (u_char*) lala.c_str();

    cout << "lalalala: " << a << endl;
nemusis kopirovat, lebo string je kontajner, kde su ulozene znaky zasebou podla adries, preto ti staci iba adresu prveho znaku dat do pointra u_char a znaky sa vypisu az po ukoncovaci znak '/0', kopirovanie nieje nutne, ak to nechces z nejakych inych dvovodov.

pripadne mozes vratil velkost int size = lala.size() a prehladat prvky cez for().
tak som to pretypovane vyriesil zapisom a nacitanim do binarneho suboru..
Ked ti nejde menej dobre riesenie, tak spravis este horsie, ci ako? :D
To co si dal uplne hore, urcite nepojde :), pouc sa a skus sam zistit preco :).
Napísať odpoveď