Следующий код работает на windows, но не на osx.
В документах по swscanf сказано, что:
"... некоторые реализации wscanf () используют" AZ "для представления диапазона символов от 'A' до 'Z'. "
В некоторых реализациях это означает, что osx не реализует это?
int main(int argc, const char* argv[])
{
{
wchar_t foo[] = L"bif3.zip";
wchar_t buh[10] = L"";
int val = 0;
wchar_t ext[4] = L"";
int s = swscanf(foo, L"%[a-z]%d.%ls", buh, &val, ext);
wprintf(L"wchar: %ls %d %ls\n", buh, val, ext);
}
{
char foo[] = "bif3.zip";
char buh[10] = "";
int val = 0;
char ext[4] = "";
int s = sscanf(foo, "%[a-z]%d.%s", buh, &val, ext);
printf("char: %s %d %s\n", buh, val, ext);
}
}
результат:
wchar: 0
char: bif 3 zip