How to view printf output in a Win32 application on Visual Studio 2010?

You'll need a console window. By far the easiest way to get one is to change a linker option: Project + Properties, Linker, System, SubSystem = Console. Add a main() method:

int main() {
    return _tWinMain(GetModuleHandle(NULL), NULL, GetCommandLine(), SW_SHOW);
}

Edit 2021, Visual Studio 2019

To write debug messages to the Output window use the OutputDebugStringA from debugapi.h (include windows.h)

test.c

#include <windows.h>
#include <stdio.h>

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdShow, int nCmdShow)
{
    int number = 10;
    char str[256];
    sprintf_s(str, sizeof(str), "It works! - number: %d \n", number);

    OutputDebugStringA(str);

    return 0;
}

Tested on Visual Studio 2019, Debug / x64.

Or alternatively utilize my drop-in header file.