В проекте dll функция такова:
extern "C" __declspec(dllexport) void foo(const wchar_t* a, const wchar_t* b, const wchar_t* c)
В другом проекте я буду использовать функцию foo, но объявляю функцию foo в заголовочном файле с
extern "C" __declspec(dllimport) void foo(const wchar_t* a, const wchar_t* b)
и я называю его только двумя параметрами.
Результат - это успех, я думаю, что это о вызове __cdecl, но я хотел бы знать, как и почему это работает.