Ah, I see. I guess I should compile more often to see what the real problem is. This is a bug in MSVC++, and it's a very obscure one at that. MS fixed it in VS.NET, but older versions will still have the problem. To fix it you have to redefine operator<< for ostream:
Code:
#include<iostream>
using namespace std;
#define COUTFIX
#ifdef COUTFIX
std :: ostream& operator<< ( std :: ostream& os, __int64 i )
{
char buffer[BUFSIZ];
sprintf ( buffer,"%I64d", i );
os<<buffer;
return os;
}
#endif
int main ( void ) {
__int64 j;
for ( j = 3456958; j <= 92233720368547758; j++ ) {
cout<< j <<endl;
}
return EXIT_SUCCESS;
}