Can't wrap my head around this one - the function pointers: 
 | #include <windows.h>
#include <math.h>
#include <dsound.h>
#include <stdio.h>
#define DIRECT_SOUND_CREATE(name) HRESULT WINAPI name(LPCGUID pcGuidDevice, LPDIRECTSOUND *ppDS, *LPUNKNOWN pUnkOuter)
typedef DIRECT_SOUND_CREATE(direct_sound_create);
  
 | 
 
And for some odd reason, my Visual Studio underlines the 
DIRECT_SOUNDE_CREATE and raises an error:
I've been unsuccessfully trying to solve this particular problem for weeks, need help or directions.