Visual C++ Express Edition or lcc-win32?

  • Thread starter Nimmi Srivastav
  • Start date
N

Nimmi Srivastav

Apologies if my cross posting has offended anyone....

For a pure hobbyist C/C++ programmer, who wants to develop
applications to run on Windows, what would be a better choice to
install: Visual C++ Express 2005 Edition or lcc-win32? Does anyone
have any opinion to share?

Also, is there a C++ compiler akin to lcc-win32?

Thanks,
Nimmi
 
V

Victor Bazarov

Nimmi said:
Apologies if my cross posting has offended anyone....

For a pure hobbyist C/C++ programmer, who wants to develop
applications to run on Windows, what would be a better choice to
install: Visual C++ Express 2005 Edition or lcc-win32? Does anyone
have any opinion to share?

I've used MS compilers (with various success) from around 1990, and
eventually (unfortunately, only recently) they got quite decent. I
cannot vouch for their C[99] support, but their C++ compliance is
very good. They produce fast code, and the project management in
their IDE is not bad at all.

What's "lcc"?
Also, is there a C++ compiler akin to lcc-win32?

I don't know that, sorry.

V
 
C

CBFalconer

Nimmi said:
Apologies if my cross posting has offended anyone....

For a pure hobbyist C/C++ programmer, who wants to develop
applications to run on Windows, what would be a better choice to
install: Visual C++ Express 2005 Edition or lcc-win32? Does anyone
have any opinion to share?

Also, is there a C++ compiler akin to lcc-win32?

lcc-win32 is not a C++ compiler. There is no such language as
C/C++. There are many compilers that can handle both C and C++,
but they have to be told what to compile in some manner or other.
If you want to just develop standard C programs, look into DJGPP
and its port of gcc. For GUI stuff, consider mingw or cygwin, and
their ports of gcc. All free, and all can handle both C and C++.
Avoid Visual C, because it will try to lock you into various
non-portable Microsoftianisms. Similarly lcc-win32. Read the gcc
documentation, and always use "-ansi -pedantic -W -Wall" until you
have very good (and rare) reasons to use non-standard coding. This
is written with a view to using C, on c.l.c.

Don't cross-post between c.l.c and c.l.c++.
 
A

Alf P. Steinbach

* Victor Bazarov:
What's "lcc"?

Used to be relevant in the 1990's. As I understand it, essentially one
man's opinion on which extensions should really be there in C and C++.
And he implemented it. One must respect that. But I think, now not so
relevant any more.
 
K

Keith Thompson

Alf P. Steinbach said:
* Victor Bazarov:

Used to be relevant in the 1990's. As I understand it, essentially
one man's opinion on which extensions should really be there in C and
C++. And he implemented it. One must respect that. But I think, now
not so relevant any more.

There's a distinction between lcc and lcc-win32. I'm not clear on the
details; if you're curious, ask in comp.compilers.lcc. (Neither of
the is a C++ compiler, though lcc-win32 implements some C++-like
extensions to C.)
 
R

Richard Heathfield

Nimmi Srivastav said:
Apologies if my cross posting has offended anyone....

For a pure hobbyist C/C++ programmer, who wants to develop
applications to run on Windows, what would be a better choice to
install: Visual C++ Express 2005 Edition or lcc-win32?

A perusal of the comp.lang.c posting history of the latter will induce
you to select the former. But they are not the only two choices -
mingw32 is basically gcc-for-Windows, and is well worth a look. Having
said that, VC++ is a good compiler (at least for C, anyway, and
apparently its C++ conformance has improved in recent years, too, but
the clc++ crowd will correct me on that if I'm mistaken).
Does anyone have any opinion to share?

It is very, very, very, very, very rare for me to recommend a Microsoft
product, but I have occasionally recommended Visual C to people needing
a Windows implementation. And if the only choice is between Emperor
Palpatine and Jar-Jar Binks, what can you do but join the Dark Side?

(But there /are/ other alternatives. See above.)

Also, is there a C++ compiler akin to lcc-win32?

I don't know of any C++ compilers ostensibly written by self-serving
buffoons, but of course it's entirely possible that this is merely
ignorance on my part.
 
J

jacob navia

Nimmi said:
Apologies if my cross posting has offended anyone....

For a pure hobbyist C/C++ programmer, who wants to develop
applications to run on Windows, what would be a better choice to
install: Visual C++ Express 2005 Edition or lcc-win32? Does anyone
have any opinion to share?

Also, is there a C++ compiler akin to lcc-win32?

Thanks,
Nimmi

I am the author of lcc-win32. This is a C compiler that implements
the latest standard C99 under windows. There is a 64 bit version
in the works, and there are 64 and 32 bits versions under linux
and AIX.

Language: C99 plus compatible extensions, operator overloading and
generic functions. Other minor extensions like default
arguments are accepted.

Libraries: Supports 100 digits precision floating point, bignums
and 128 bit integers as extended types (using operator
overloading).
Statistics library.
Garbage collector
String library (Using operator overloading) that uses
counted strings and NOT zero terminated ones.
Matrix library.
Environment: IDE, windowed debugger, resource editor, project
management.
Price: Free download. Size: around 5MB. All this is written
in C. Generates very small programs.

Bugs: Only the 32 bit windows version is well tested.
 
J

jacob navia

Richard said:
I don't know of any C++ compilers ostensibly written by self-serving
buffoons, but of course it's entirely possible that this is merely
ignorance on my part.


You can't post anything without insults...

This is nice. You do not have any arguments anymore.

jacob
 
J

jacob navia

Victor said:
Nimmi said:
Apologies if my cross posting has offended anyone....

For a pure hobbyist C/C++ programmer, who wants to develop
applications to run on Windows, what would be a better choice to
install: Visual C++ Express 2005 Edition or lcc-win32? Does anyone
have any opinion to share?

I've used MS compilers (with various success) from around 1990, and
eventually (unfortunately, only recently) they got quite decent. I
cannot vouch for their C[99] support, but their C++ compliance is
very good. They produce fast code, and the project management in
their IDE is not bad at all.

What's "lcc"?
Also, is there a C++ compiler akin to lcc-win32?

I don't know that, sorry.

V

Please see my other post in this thread.
 
J

jaysome

Apologies if my cross posting has offended anyone....

For a pure hobbyist C/C++ programmer, who wants to develop
applications to run on Windows, what would be a better choice to
install: Visual C++ Express 2005 Edition or lcc-win32? Does anyone
have any opinion to share?

I suggest you try both and make up your own mind. I have (and I prefer
VC++ 2005). As others have mentioned, there are other alternatives,
and you should consider those as well.

In my experience, the more compilers you can compile your code with
the better. C compilers are free to issue diagnostics for anything and
everything. That's not to say that compilers abuse this and emit
diagnostic messages on a whim, even when nothing is wrong with your
code. On the contrary, compilers emit diagnostic warnings for good
reason. And some compilers do it better than others.

Since you asked about compilers running on Windows, I'll tell you that
one of my favorite "compilers" is PC-lint:

http://www.gimpel.com/

Note that PC-lint is not free, so it may not be suitable for a
hobbyist, depending on your definition of a hobbyist.

Best regards
--
jay

P.S.
PC-lint also runs on Linux, provided you run it in a Windows emulator
such as WINE.

P.S.2
PC-lint runs fine under Windows Vista 32-bit and 64-bit versions.

P.S.3
The last time I checked, there was no 64-bit version of WINE.
 
M

Malcolm McLean

jacob navia said:
Nimmi Srivastav wrote:
I am the author of lcc-win32. This is a C compiler that implements
the latest standard C99 under windows. There is a 64 bit version
in the works, and there are 64 and 32 bits versions under linux
and AIX.

Price: Free download. Size: around 5MB. All this is written
in C. Generates very small programs.
If you don't mind me asking, how do you make money on it if you give the
compiler away for free? It doesn't sound like a hobby project.
 
K

Keith Thompson

jacob navia said:
I am the author of lcc-win32. This is a C compiler that implements
the latest standard C99 under windows. There is a 64 bit version
in the works, and there are 64 and 32 bits versions under linux
and AIX.

Language: C99 plus compatible extensions, operator overloading and
generic functions. Other minor extensions like default
arguments are accepted.
[...]

Have you finished implementing C99?

About a year ago, in comp.compilers.lcc, you wrote:
| Designated initializers and structure initializers with the
| dot notation are missing.
|
| I am giving priority to the library, that is kind of
| "mostly" finished. I have probably some problems with
| complex numbers, there hasn't been a good testing of that
| part.
|
| Besides the preprocessor is still missing the variable
| arguments feature.

If these features are still missing, please don't claim that it
implements C99.
 
M

Mark McIntyre

If you don't mind me asking, how do you make money on it if you give the
compiler away for free? It doesn't sound like a hobby project.

Free for *non-commercial* use.

--
Mark McIntyre

"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it."
--Brian Kernighan
 
A

Army1987

Apologies if my cross posting has offended anyone....

For a pure hobbyist C/C++ programmer, who wants to develop
applications to run on Windows, what would be a better choice to
install: Visual C++ Express 2005 Edition or lcc-win32? Does anyone
have any opinion to share?

Also, is there a C++ compiler akin to lcc-win32?

If you don't need C99 support and can wait for 90MB to download,
use MSVC. Its long double is eight bytes, but at least the fractal
picture I generate computing with them isn't yellowed by a bug
which prevents a three byte struct from being returned correctly.
Also it doesn't have the upper limits of some unsigned types
suffixed with LL without any U. And I didn't get any assertion
failure from its compiler yet.
 
J

jacob navia

Army1987 said:
If you don't need C99 support and can wait for 90MB to download,
use MSVC. Its long double is eight bytes, but at least the fractal
picture I generate computing with them isn't yellowed by a bug
which prevents a three byte struct from being returned correctly.

??? This was fixed at least a year ago. Can you send a test
example?
Also it doesn't have the upper limits of some unsigned types
suffixed with LL without any U.

Either it is a fixed bug since ages or you are talking nonsense.

In limits.h I have
#define ULLONG_MAX 18446744073709551615ULL
> And I didn't get any assertion
> failure from its compiler yet.

Can you provide an example?

Obviously a typo invalidates all other features of this compiler.

Using MSVC of course prevents you from all bugs since it is
a well known thing that Microsoft has never any bugs.
 
J

jacob navia

Malcolm said:
If you don't mind me asking, how do you make money on it if you give the
compiler away for free? It doesn't sound like a hobby project.

The project is financed by the paying customers.
 
R

Richard

Richard Heathfield said:
I don't know of any C++ compilers ostensibly written by self-serving
buffoons, but of course it's entirely possible that this is merely
ignorance on my part.

And you should now. On both counts.
 
C

CBFalconer

Richard said:
Nimmi Srivastav said:
.... snip ...


I don't know of any C++ compilers ostensibly written by self-serving
buffoons, but of course it's entirely possible that this is merely
ignorance on my part.

I think this is an unnecessary dig.
 
T

tragomaskhalos

In my experience, the more compilers you can compile your code with
the better. C compilers are free to issue diagnostics for anything and
everything. That's not to say that compilers abuse this and emit
diagnostic messages on a whim, even when nothing is wrong with your
code. On the contrary, compilers emit diagnostic warnings for good
reason. And some compilers do it better than others.

This is excellent advice; even at a hobbyist level you should
always have at least two compilers to check your code against;
it's amazing the range of subtle and not-so-subtle snafus you
can make that one compiler will let through but that another
will catch, and vice-versa, at least in my experience.
 
B

BobR

jacob navia said:
Using MSVC of course prevents you from all bugs since it is
a well known thing that Microsoft has never any bugs.

BSOD is a *feature*.
If you don't like it, upgrade (hey, it's only another $400!).
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,014
Latest member
BiancaFix3

Latest Threads

Top