Спасибо, все ясно.
_>Второй вариант не скомпилируется. Нужно указать размер, например:
Странно, у меня компилируется...

Visual Studio 2005, проект VC++, Win32 Console Application
int _tmain(int argc, _TCHAR* argv[])
{
char *str = new char[];
printf(str);
return 0;
}
Правда печатает кракозябру... Что говорит о том, что строка инициализуруется мусором...