Łączenie charów - zagadka

0

Witam,
Mam pewnie trywialne pytanie :)
Otóż, umówmy się, że mam text box na formatce gdzie mogę wpisać sobie dowolny tekst.
No i mam kod gdzieś pod buttonem:

char id[] = "jest";
std::string lacz = msclr::interop::marshal_as<std::string>(textbox->Text); //biorę sobie tekst z text boxa i przypisuje do zmiennej string
const char id3[] = lacz.c_str();//deklaruje drugą zmienna tablicową typu char i do niej chce przypisać skonwertowany na char tekst spod zmiennej "lacz"

Ale mam tutaj błąd:
std::string lacz
IntelliSense: initialization with '{...}' expected for aggregate object

Pytanie jak to zrobić?
Docelowo chcę połączyć zmienna "id" z początku własnie z wartością spod pola textowego na formatce i obie wartości musza być wartościami char[]

Z góry dziękuję i pozdrawiam :)

0

na potrzeby projektu to musi byc tablica charow.
A temat, który podesłałeś już przerobiłem wcześniej i nie pomogło...
Pytanie jak przekonwertować std::string na tablice charów

0

bez sensu... ze musisz tego uzyc (ze tablica, a nie np wskaznik, no ale ok...)

tutaj masz rozwiazanie
http://www.cplusplus.com/reference/cstring/strcpy/

1

const char id3[] = lacz.c_str();//deklaruje drugą zmienna tablicową typu char i do niej chce przypisać skonwertowany na char tekst spod zmiennej "lacz"

Nigdy nie powinno się wyniku z c_str() przypisywać do zmiennej, bo to proszenie się o kłopoty. c_str używa się tylko w wywołaniu funkcji która przyjmuje parametr typu const char* a my mamy stringa.

foobar(lacz.c_str());

Jak chcesz mieć zmienną to @fasadin dał ci rozwiązanie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1