473,399 Members | 3,919 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,399 software developers and data experts.

versions


Hi,

There are many versions of C and C++ built by many differen
companies.
So, which version :

1. more easier to learn
2. more easier to remember
3. more easier to debug
4. helps me find errors fast and professionally
5. more portable
6. has the biggest community
7. has more tutorials widely available
8. has it’s source code all over the internet
9. and so on

If C++ is an extension of C then why isn’t it called the new version o
C instead of having a different name ?
And, why isn’t it called C+ instead of C++ ?
Was there ever a C+ ?
Who created the C++ and why couldn’t they give a different name instea
of copying the name from C ?
Anything else I should know
-
onau
-----------------------------------------------------------------------
Posted via http://www.codecomments.co
-----------------------------------------------------------------------

Nov 14 '05 #1
7 1664
onauc wrote:
There are many versions of C and C++ built by many different
companies.
Hrrm, not versions, but implementations thereof. The point is, that (I'll
leave aside C++ for now) you have basically two standards currently in
use, C89 and C99 IIRC. There is also the ancient K&R C(named by C's
originators Kernighan and Ritchie) which was AFAIK never standardized, but
that is not in wide use anymore.

Most compilers today conform to the C89 standard(i.e. are implementations
of that standard), and that is also what you should start off learning
first. Compilers is what exists many of, not versions of C or C++.

If your question is how to start, I'd suggest reading
news:alt.comp.lang.learn.c-c++. Further, get a compiler with an
IDE(kdevelop and DevC++ are both free) and a good book(read the reviews at
accu.org).
If C++ is an extension of C then why isn’t it called the new version of
C instead of having a different name ?
C and C++ share common roots, but C++ is not an extension of C. Both
languages also differ in the way that you approach problems in them. Let
me repeat: although their code uses the same syntax in most places, they
are different languages, learn only one at a time!
Who created the C++ and why couldn’t they give a different name instead
of copying the name from C ?


Bjarne Stroustrup is its originator, plus many others that helped
standardize C++. You can find some background info on his homepage.

Uli

Nov 14 '05 #2

"onauc" <on**********@mail.codecomments.com> wrote

There are many versions of C and C++ built by many different
companies.
So, which version :

1. more easier to learn
2. more easier to remember
3. more easier to debug
4. helps me find errors fast and professionally
5. more portable
6. has the biggest community
7. has more tutorials widely available
8. has it's source code all over the internet
9. and so on
With C, there is a distinction between the language proper, the standard
library, and the platform-specific libraries that ship with most compilers.
With a few minor variations, the language proper is stable, and is the same
whichever compiler you buy. The standard library is also, as the name
implies, the same. You need to learn both of these to be a C programmer.

Platform-specific libraries tend to be very large, and few programmers know
all the details of any one library. I have my opinions on which libraries
are well-designed and which are a pig in a poke, but I will keep them to
myself.

An IDE (integrated development environment) also comes with most commercial
compilers. This shouldn't be confused with the compiler proper, which takes
in an ASCII source file, written in any editor, and spits out an executable,
running entirely without any graphical output. IDEs generally come with
debuggers, online documentation, source control systems, maybe tools like
memory leak detectors.

Which IDE you use depends on which platform you run, and how much money you
have to spend. Microsoft .net is probably the most widely-used on PCs, and
for professional development is effectively essential, because of the way
Microsoft have managed to tie the operating system and third party products
into their compiler. However if you can get another compiler much cheaper it
will probably be perfectly adequate for home use.
If C++ is an extension of C then why isn't it called the new version of
C instead of having a different name ?
Because the C subset remains a language which people use, for various
reasons it is often better to reject the C++ extensions.
And, why isn't it called C+ instead of C++ ?
The name is a cute bit of marketing. in C, "C++" means "increment C".
Was there ever a C+ ?
Not that I know of.
Who created the C++ and why couldn't they give a different name instead
of copying the name from C ?
The name is a little bit unfair to C programmers, since it implies that we
are using an inferior language. I actually failed a job interview once
because of this. I said I preferred C, and the interviewer, who obviously
wasn't very adept technically, seemed tog et the impression that this was
because I was incapable of understanding C++.
The name C++ implies "a better C". Since both languages are open standards
there is no-one around to hire lawyers, so Bjarne Stroustrup, who invented
C++, was allowed to get away with it.
Anything else I should know ?

From the questions you ask you are obviously at a very early stage of
learning about C programming. For the purpose of the newsgroup, the most
important thing to be claer about is the distinction the langauge proper and
the standard library, both of which are on-topic, and work the same way on
all platforms, and the tools and extensions, which we don't deal with here.
Nov 14 '05 #3
onauc wrote:
If C++ is an extension of C then why isn’t
it called the new version of
C instead of having a different name ?
And, why isn’t it called C+ instead of C++ ?
Was there ever a C+ ?
Who created the C++ and why couldn’t they give a different name
instead of copying the name from C ?
Anything else I should know ?


You should know how to use google.
http://www.google.com/

--
pete
Nov 14 '05 #4

On Sat, 20 Nov 2004, Malcolm wrote:

Which IDE you use depends on which platform you run, and how much money you
have to spend. Microsoft .net is probably the most widely-used on PCs, and
for professional development is effectively essential,
.NET might be the most widely used in some fields, and I'd agree that
the Microsoft Visual Whatever family is probably the most widely used on
PCs in the commercial world, but I think you give .NET too much credit. :)
because of the way
Microsoft have managed to tie the operating system and third party products
into their compiler. However if you can get another compiler much cheaper it
will probably be perfectly adequate for home use.
Yep. GCC is free. I use it on three platforms (DJGPP on WinXP, and the
compilers that come with the system on Red Hat and Solaris), and it's
very nice that it works the same on all three.

[...]
And, why isn't it called C+ instead of C++ ?

The name is a cute bit of marketing. in C, "C++" means "increment C".

[...] The name is a little bit unfair to C programmers, since it implies that we
are using an inferior language. [...] The name C++ implies "a better C".
Well, as anyone who's learned C++ after C knows, the name "C++" actually
means "increment C, and then use the old value." ;-)
From the questions you ask you are obviously at a very early stage of
learning about C programming. For the purpose of the newsgroup, the most
important thing to be clear about is the distinction the language proper
and the standard library, both of which are on-topic, and work the same
way on all platforms, and the tools and extensions, which we don't deal
with here.


Yup.

-Arthur
Nov 14 '05 #5

"onauc" <on**********@mail.codecomments.com> wrote in message
news:1100936214.p5PHKmDD1b+rgRsS19cEtg@tng...

Hi,

There are many versions of C and C++ built by many different
companies.
So, which version :

1. more easier to learn
If you are going to choose a compiler, standard conformity is an important
issue. Various vendors may add 'features' to the standard, but is is usually
wise to be *very* carefull about using them. It implies you're stuck with
that vendor as long as you're using that speicific feature. I've been there
and it's no place i'd recommend.

Hence, this is not really an issue.
2. more easier to remember
idem.
3. more easier to debug
Depends on the quality of the debugger, not the compiler. If yoiu are going
to buy a IDE, this *may* be an issue.
4. helps me find errors fast and professionally
That mainly depends on wether or not you write your code professionally.
5. more portable
Standard conforming....
6. has the biggest community
C below.
7. has more tutorials widely available
C is C is C... If your compiler is standard conforming, you can use any
tutorial.
8. has it's source code all over the internet
idem. If you mean "compiler sources" check out http://gcc.gnu.org.
9. and so on
You forget the most important question with respect to quality. "Is the code
generation
any good?" after all, that is the *real* product of a compiler. All others
are secondary.
If C++ is an extension of C then why isn't it called the new version of
C instead of having a different name ?
Neither. It's another language with it's own (large) set of pro's and con's.
Do not confuse the two, eventhough they share a lot.
And, why isn't it called C+ instead of C++ ?
Other posters have answered this.
Was there ever a C+ ?
Nope. C below, however.
Who created the C++ and why couldn't they give a different name instead
of copying the name from C ?
C++ started out as a C-preprocessor called CPlus (IIRC). so the link between
C and C++ is an old one and (personally) I have never taken any offence. I
would be rather surprized if eithe Mr. Kernigan or Mr Ritchie have.
Anything else I should know ?


Yes. Lots. But that goes for me, too.

Basically, this is my short list of important questions:

a. How good is the code generation?
b. Is it standard conforming (C98 *or* C99)?
c. How good are the diagnostics (errors, warnings)?
d. How many platforms are supported and are the features
of that platform supported well or summarily?
e. How well is the compiler documented?
f. How quickly are bugs found and fixed?

where a & b have top priority. Question d is a tricky one, but should not be
neglected. If (for instance) you compile for a PowerPC and the compiler does
not optimize (instruction scheduling, branch prediction, register
allocation) for the processors ability to do 3 floating-point and one
integer operation simultaneously, it is a good as worthless for that
processor, no matter how good it may be for other processors.

Choosing a compiler is no easy task.
Nov 14 '05 #6
In <1100936214.p5PHKmDD1b+rgRsS19cEtg@tng> onauc <on**********@mail.codecomments.com> writes:
So, which version :

1. more easier to learn
C89.
2. more easier to remember
C89.
3. more easier to debug
Not a language issue. Debugability is a code property, not a language
property.
4. helps me find errors fast and professionally
What's the difference between debugging and finding errors?
5. more portable
C89.
6. has the biggest community
C89.
7. has more tutorials widely available
C89.
8. has it’s source code all over the internet
A language specification has no source code. You can find the source
code of conforming C89 *implementations* on the Internet.
9. and so on
C89.
If C++ is an extension of C then why isn’t it called the new version of
C instead of having a different name ?
Because it's not an extension of C.
And, why isn’t it called C+ instead of C++ ?
Are you sure you have the slightest clue about C?
Was there ever a C+ ?
Not that I know of.
Who created the C++
Bjarne Stroustrup.
and why couldn’t they give a different name instead
of copying the name from C ?
C++ started as an attempt to improve C. By the time it became something
quite different its name was far too popular to be changed. And,
considering that most of C is part of the common subset of the two
languages, the name is still, at least partly, justified.
Anything else I should know ?


Most of your questions are utterly irrelevant.

Anything you should know is included in K&R2. Go and read it.

Dan
--
Dan Pop
DESY Zeuthen, RZ group
Email: Da*****@ifh.de
Currently looking for a job in the European Union
Nov 14 '05 #7
Da*****@cern.ch (Dan Pop) writes:
[...]
and why couldn't they give a different name instead
of copying the name from C ?


C++ started as an attempt to improve C. By the time it became something
quite different its name was far too popular to be changed. And,
considering that most of C is part of the common subset of the two
languages, the name is still, at least partly, justified.


Early versions of the language that became C++ were referred to as
"C with classes" (which doesn't contradict your point).

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <*> <http://users.sdsc.edu/~kst>
We must do something. This is something. Therefore, we must do this.
Nov 14 '05 #8

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

7
by: Ted | last post by:
I would like to collect opinions on which versions of Python should be considered watershed versions. By this I mean versions which are stable and contain significant landmark features. As an...
3
by: zorro | last post by:
Hello, If I have to test my code on different Netscape versions, can I download and run those versions on the same computer or will it create conflicts? And if I had to test only one version...
0
by: Oliver Elphick | last post by:
The attached proposal is written primarily for Debian. Its motivation is that the current package upgrade process is pretty flaky and also that the current packaging does not really provide for...
14
by: wolftor | last post by:
1) Is there a free runtime version of Access available that is more recent than the one for Access 2000? 2) If I create an application (MDE) in A2K, will it run on all later versions of Access?...
4
by: Dalan | last post by:
After reading and experiencing the phenomenon of installing MS Office 2000 on a system that already has MS Office 97, or for that matter just Access 97 Runtime, I saw the ugliness that ensues. If...
5
by: Michael Maes | last post by:
Hi, We have an ERP-Application that needs to interact with an "external accountancy program". This is acchieved through a "Connector" (ActiveX-dll) so kindly provided by the Accountancy-Program....
5
by: Laurence | last post by:
In VS.2005 using VB.NET There are two versions on every project, The Assembly Version and the File Version. Why are there two different versions? As far as I can tell, there is not need for...
37
by: Allen Browne | last post by:
If you develop for others, you probably have multiple versions of Access installed so you can edit and create MDEs for clients in different versions. This works fine under Windows XP, even with...
9
by: python | last post by:
Background: I'm going to be processing some raw transaction logs that are 30G in size. As part of this processing I may need to create some very large dictionary structures. I will be running my...
1
by: M.-A. Lemburg | last post by:
On 2008-07-25 08:13, python@bdurham.com wrote: Yes. But then Intel Itanium is being phased out anyway and the AMD64 build works on both Intel and AMD processors. True.
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.