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

[wstring] Dlaczego chce chara?

Ostatnio zmodyfikowano 2012-01-29 18:27
Autor Wiadomość
Mrovqa
Temat założony przez niniejszego użytkownika
[wstring] Dlaczego chce chara?
» 2012-01-29 17:11:17
Witam!

Pytam z ciekawości... Dlaczego coś takiego:
C/C++
wstring jakis;
//...
jakis[ cos ] = L'\\';
Wywala takie ostrzeżenie:
warning C4066: characters beyond first in wide-character constant ignored
!?
Gdy zamienię
L'\\'
 na
'\\'
 to wtedy nie ma ostrzeżenia. O co z tym chodzi? Przecież wstring jest bazowany na
wchar_t
...
Korzystam z VC++ 2010 Exp


Pozdrawiam,
Mrowqa
P-49773
DejaVu
» 2012-01-29 17:13:12
Zapewne to
wstring jakis;
 jest w rzeczywistości
string jakis;
P-49774
Mrovqa
Temat założony przez niniejszego użytkownika
» 2012-01-29 17:23:43
Gdy zrobię na stringu:
C/C++
string a;
//...
a[ i ] = 'c';
Warningi:
1>d:\c++\my projects\testy itp\mrowqaupdateprototype\mrowqaupdateprototype\filelistinga.cpp(12): warning C4305: '=' : truncation from 'int' to 'char'
1>d:\c++\my projects\testy itp\mrowqaupdateprototype\mrowqaupdateprototype\filelistinga.cpp(12): warning C4309: '=' : truncation of constant value
o.O
Natomiast gdy użyję rzutowania (
char( 'c' )
) - errory znikają...

Co do wstringa... wstring i string są wykonane na szablonie string_basic czy jakoś tak (jeden ma
char
y, a drugi
wchar_t
), więc nie są na sobie bazowane :P
Niemniej jednak, gdy użyję zamiast
'c'
 to
L'c'
 to jest wcześniejszy error... więc coś w szablonie przy operatorze[] musi być pochrzanione... ;P


Pozdrawiam,
Mrowqa
P-49777
DejaVu
» 2012-01-29 17:26:23
Może masz plik źródłowy zapisany w formacie Unicode, a nie ASCII?
P-49778
Mrovqa
Temat założony przez niniejszego użytkownika
» 2012-01-29 17:39:01
Nie czytam z pliku, po prostu chodzi o stałą dosłowną w kodzie programu... Wiem w czym był problem - napisałem podwójnego slasha zamiast backslasha i kompilator potraktował to jako
int
a ;P
P-49779
DejaVu
» 2012-01-29 17:41:48
Aha... czyli kompilator po prostu pobiera kod źródłowy zapisany w pamięci, a nie z pliku znajdującego się na dysku? Chyba nie do końca rozumiesz co do Ciebie piszę :)
P-49781
Mrovqa
Temat założony przez niniejszego użytkownika
» 2012-01-29 18:27:25
Pisząc mojego powyższego posta nie zauważyłem Twojego posta :) Wiem o co ci chodzi ;)
P-49784
« 1 »
  Strona 1 z 1