Jos uvek sebe smatram pocetnikom i sa ovim problemom se dosad nisam sreo (nisam imao potrebe).
..., ali evo mog iskustva:
Code:
// Windows 2000, Dev-Cpp 4.9.8.9, GCC 3.2
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <cstdio>
#include <cwchar>
using namespace std;
int main(int argc, char *argv[]){
int d = 77;
float f = 777.;
wchar_t test1[] = L"Ovo je probni wchar";
static char aa[12]={"diag1.ps"};
ofstream wcout;
wcout.open(aa,ios::out);
wcout << "showpage\n"; // OK
wcout << L"Ovo je wide-char string\n" << endl; //OK
wcout<<test1<<endl; // Ne daje ono sto sam hteo nego adresu
wprintf(L"Wide-char izlaz: d = %d; f = %6.2f\n", d, f); // OK
wprintf(L"test1: %s\n",test1); // OK
wchar_t test2[55];
wcscpy(test2, test1);
wcout<<test2<<endl; // Ne daje ono sto sam hteo nego adresu
wprintf(L"test2: %s\n",test2); // OK
wcout.close();
// Ovo dole daje ocekivane rezulte
FILE *fw;
fw = fopen("widechar.txt", "w");
fwprintf(fw, L"Wide-char izlaz: d = %d; f = %6.2f\n", d, f);
fwprintf(fw, L"test1: %s\n",test1);
fwprintf(fw, L"test2: %s\n",test2);
fclose(fw);
system("PAUSE");
return 0;
}
Pokusaj rada sa klasom string, ne uspeva uz poruku:
[Linker error] undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::basic_string()'