OS: windows vista 32 bit.
I was searching the web for a compiler which has lesser numbers of issues and with good written help available.
I am thinking of vc++ or blood shed dev c++
Then I came across this term ANSI .....
Is it necessary for a compiler to follow ANSI standards .(heard that vc++ does not) but I am not a full time programmer .
What are your views on the two mentioned compilers?
Could you suggest me a book for c programming.

>Is it necessary for a compiler to follow ANSI standards
To be strictly correct, it's the ISO standard. And yes, ideally your compiler should conform to the most recent standard as much as possible. However, complete conformance isn't necessary as most of the time the parts that aren't implemented are typically 1) not well understood 2) not often requested or 3) not something you'll find yourself needing.

>heard that vc++ does not
Visual C++ is actually one of the better compilers out there right now in terms of standard conformance.

>What are your views on the two mentioned compilers?
Visual C++ is good, but Dev-C++ is a dead project. If it does everything you want right now, go for it, but if you want an actively developed and improving IDE with the same underlying compiler, look at Code::Blocks.

>Could you suggest me a book for c programming.
C or C++? This is the C++ forum, so there's a bit of ambiguity in your question.

VC++ Use "CLR" Which is managed code, using MFC wrappings etc. But it does support ISO / ANSI Standards well and is a good compiler.


Grr i hate to think of Dev being dead can everyone stop pointing it out lol

Chris

After all Dev-C++ is not a compiler, it's frozen IDE (v.5 beta forever) with OLD version of MinGW compiler.
So beautiful zombie ;)...
Code::Blocks is IDE under active developing and support with NEWEST version of MinGW compiler.
Feel the difference...

No MFC in free VC++ 2008 Express, only NET Forms for GUI.

VC++ Use "CLR" Which is managed code.

It can produce either CLR (.NET) or plain (unmanaged) win32 code

This question has already been answered. Start a new discussion instead.