I believe a ‘feature’ of SDL2 running on MacOS is that you must pump the event queue before the window will display. Try adding:
SDL_PumpEvents();
As you work through the LazyFoo tutorials you will soon find that you need to do that anyway to retrieve the SDL_QUIT event.