Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

CodeBlocks, czy możliwa zamiana znaku stringa na innego stringa

Ostatnio zmodyfikowano 2012-08-29 06:06
Autor Wiadomość
marianekA
Temat założony przez niniejszego użytkownika
CodeBlocks, czy możliwa zamiana znaku stringa na innego stringa
» 2012-08-21 20:40:30
Szukam, czytam i eksperymentuje ale nic mi nie wychodzi.
Przykładowo mam dwie zmienne tekstowe
string a1="kraty";
string a2="ę";
Czy jest możliwa zamiana znaku "a" ze zmiennej a1
 na znak "ę" ze zmiennej a2  aby a1 było "kręty"
Wiem jak taką zamianę zrobić przy pomocy zmiennej char i string.replace()
ale wtedy nie mogę użyć znaków unicode
P-63233
m4tx
» 2012-08-21 20:45:51
string::find_first
string::erase
string::insert

Może tak?
P-63236
Mrovqa
» 2012-08-21 20:58:01
Do znaków UNICODE jest klasa wstring. Obsługa taka sama jak zwykły string z tą różnicą, iż operujesz na UNICODE zamiast ASCII ;)
P-63240
marianekA
Temat założony przez niniejszego użytkownika
» 2012-08-21 22:17:22
Do m4tx - sprawdziłem - działa, ... wczoraj nie działało, było już późno i byłem pewnie przemęczony.

Do Mrovqa - próbowałem z wstring ale pewnie nieumiejętnie.
Mam bazę danych w pliku którą wczytuję do tablicy stringów i nie mam pojęcia gdzie tam wstawić to magicze "L".
C/C++
...
wstring wyrazy[ 3000 ]; // ?L
fstream plik;
plik.open( "wyrazy.txt", ios::in );
while( !plik.eof() )
{
    ++v;
    plik >> wyrazy[ v ];
}
plik.close();
...

i czy wtedy zmienna 'char' obsłuży kody większe jak 256?
P-63246
Mrovqa
» 2012-08-22 13:57:50
C/C++
"abc" //ascii
L"abc" // unicode
'c' // ascii
L'\n' // unicode
Rozumiesz już? ;)
P-63286
bingo009
» 2012-08-22 14:04:49
Zmiana znaku string na innego stringa to nie jest funkcja CodeBlocks.
P-63288
DejaVu
» 2012-08-22 15:14:01
W czystym C++ nie ma funkcji, która by Ci to zrobiła - musisz sobie ją napisać. W bibliotece boost jest natomiast to czego szukasz: » boostreplace_all.
P-63297
marianekA
Temat założony przez niniejszego użytkownika
» 2012-08-23 22:50:03
Mrovqa - Twoja odpowiedź nie wyjaśniła mi pytania.
Wiem jak się buduje zmieną string i wstring
załadowanie danych z pliku do tablicy ze zmiennymi string
nie sprawia mi problemu, przytoczę ponownie przykład
C/C++
...
string wyrazy[ 3000 ]; // ?L
int v = 0;
fstream plik;
plik.open( "wyrazy.txt", ios::in );
while( !plik.eof() )
{
    ++v;
    plik >> wyrazy[ v ];
}
plik.close();
...
jak mam to zrobić by wczytane dane były zmiennymi wstring,
a może się nie da w ten sam sposób?
Wpisywanie ręcznie w kodzie w formie poniżej odpada
C/C++
...
wstring wyrazy[ 3000 ];
wyrazy[ 0 ] = L"Kowalski";
wyrazy[ 1 ] = L"Łuczak";
wyrazy[ 2 ] = L"Szczęsny";
...

P-63480
« 1 » 2
  Strona 1 z 2 Następna strona