Code:
int main(int argc, const char* argv[]) {
if (argc == 2) {
wchar_t buffer[1000];
cout << mbstowcs(buffer, argv[1], 999) << endl;
//...
}
}
int main(int argc, const char* argv[]) {
if (argc == 2) {
wchar_t buffer[1000];
cout << mbstowcs(buffer, argv[1], 999) << endl;
//...
}
}
Dobijam na izlazu 4294967295. To je vrednost (size_t) -1. U dokumentaciji za funkciju mbstowcs piše da ta povratna vrednost znači da na ulazu nije bio ispravan multibajt string.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.