What is the difference between C and C++?

Discussion in 'QnA (read only)' started by imagineer_aman, May 15, 2005.

Thread Status:
Not open for further replies.
  1. imagineer_aman

    imagineer_aman New Member

    May 7, 2005
    Likes Received:
    Trophy Points:
    13°7'35"N 80°6'13"E
    Hi Team,
    I am a novice in programming and have a bit of knowledge in c++(learnt it when i was in 12th).
    I want to know whats the difference in c and c++?
    Isnt C++ better than C? If so, then why so many companies use C and not C++?
  2. rajas

    rajas New Member

    Feb 22, 2004
    Likes Received:
    Trophy Points:
    Pearl City, Hyderabad.
    HI imagineer_aman, welcome to the forum.

    :shock: Do u need to post 3 threads on the same issue. Please do not repeat this.
  3. damnthenet

    damnthenet New Member

    Apr 20, 2005
    Likes Received:
    Trophy Points:
    Even I'm only learner when it comes to programming. The difference between C and C++ technically is that the former is a structure oriented language and the latter, a object oriented programming language. When it comes to usage in companies, it entirely depends on the purpose. What the company feels better enjoys the priority.
    Daniel Moses
  4. devilhead_satish

    devilhead_satish New Member

    Sep 4, 2004
    Likes Received:
    Trophy Points:
    Why i ask you Why? Why should you use C++ in the age of Microsoft.net Tech and loads of other futuristico programming apps. If you cite speed as the reason. i'll tell you that it wont be long before everyone has a GigaHertz Guzzler. Apps in C++ take horrendously long to make. Even a simple form will take you a day to build which is readily available in .Net .
  5. «TechnoPhile»

    «TechnoPhile» New Member

    May 14, 2005
    Likes Received:
    Trophy Points:
    Calm Down Man... He Might've Some Related Subjects In His Academic Syllabus... BTW, I Prefer People Learning C, C++, To Understand, Why At All C Was Invented When We Had Assembly Language, N What Led To Invention Of C++... Just Have A Look Where C & C++ Stand... Language Ratings

    -Matthew Mondor

    Hope This Helps....
  6. OP

    imagineer_aman New Member

    May 7, 2005
    Likes Received:
    Trophy Points:
    13°7'35"N 80°6'13"E
    Thanks a ton guys. A friend of mine sent me this text attachment.After reading this please tell me your views...

    This is a copy of what Bjarne Stroustrup told in an interview
    with an IEEE magazine reporter.

    IEEE Bjarne Stroustrup C++ Interview

    On the 1st of January, 1998, Bjarne Stroustrup gave an
    interview to
    the IEEE's 'Computer' magazine. Naturally, the editors
    thought he
    would be giving a retrospective view of seven years of
    design, using the language he created (C++).

    By the end of the interview, the interviewer got more
    than he had
    bargained for and, subsequently, the editor decided to
    suppress its
    contents, 'for the good of the industry' but, as with
    many of these
    things, there was a leak.

    Here is a complete transcript of what was was said,
    unedited, and
    unrehearsed, so it isn't as neat as planned
    interviews. You will find
    it interesting...

    Interviewer: Well, it's been a few years since you
    changed the world
    of software design, how does it feel, looking back?
    Stroustrup: Actually, I was thinking about those days,
    just before you
    arrived. Do you remember? Everyone was writing 'C'
    and, the trouble
    was, they were pretty damn good at it. Universities
    got pretty good at
    teaching it, too. They were turning out competent - I
    stress the word
    'competent' - graduates at a phenomenal rate. That's
    what caused the
    Interviewer: Problem?
    Stroustrup: Yes, problem. Remember when everyone wrote
    Interviewer: Of course, I did too
    Stroustrup: Well, in the beginning, these guys were
    like demi-gods.
    Their salaries were high, and they were treated like
    Interviewer: Those were the days, eh?
    Stroustrup: Right. So what happened? IBM got sick of
    it, and invested
    millions in training programmers, till they were a
    dime a dozen.
    Interviewer: That's why I got out. Salaries dropped
    within a year, to
    the point where being a journalist actually paid
    Stroustrup: Exactly. Well, the same happened with 'C'
    Interviewer: I see, but what's the point?
    Stroustrup: Well, one day, when I was sitting in my
    office, I thought
    of this little scheme, which would redress the balance
    a little. I
    thought 'I wonder what would happen, if there were a
    language so
    complicated, so difficult to learn, that nobody would
    ever be able to
    swamp the market with programmers? Actually, I got
    some of the ideas
    from X10, you know, X windows. That was such a bitch
    of a graphics
    system, that it only just ran on those Sun 3/60
    things. They had all
    the ingredients for what I wanted. A really
    ridiculously complex
    syntax, obscure functions, and pseudo-OO structure.
    Even now, nobody
    writes raw X-windows code. Motif is the only way to go
    if you want to
    retain your sanity.
    Interviewer: You're kidding...?
    Stroustrup: Not a bit of it. In fact, there was
    another problem. Unix
    was written in 'C', which meant that any 'C'
    programmer could very
    easily become a systems programmer. Remember what a
    mainframe systems
    programmer used to earn?
    Interviewer: You bet I do, that's what I used to do.
    Stroustrup: OK, so this new language had to divorce
    itself from Unix,
    by hiding all the system calls that bound the two
    together so nicely.
    This would enable guys who only knew about DOS to earn
    a decent living
    Interviewer: I don't believe you said that...
    Stroustrup: Well, it's been long enough, now, and I
    believe most
    people have figured out for themselves that C++ is a
    waste of time
    but, I must say, it's taken them a lot longer than I
    thought it would.
    Interviewer: So how exactly did you do it?
    Stroustrup: It was only supposed to be a joke, I never
    thought people
    would take the book seriously. Anyone with half a
    brain can see that
    object-oriented programming is counter-intuitive,
    illogical and
    Interviewer: What?
    Stroustrup: And as for 're-useable code' - when did
    you ever hear of a
    company re-using its code?
    Interviewer: Well, never, actually, but...
    Stroustrup: There you are then. Mind you, a few tried,
    in the early
    days. There was this Oregon company - Mentor Graphics,
    I think they
    were called - really caught a cold trying to rewrite
    everything in C++
    in about '90 or '91. I felt sorry for them really, but
    I thought
    people would learn from their mistakes.
    Interviewer: Obviously, they didn't?
    Stroustrup: Not in the slightest. Trouble is, most
    companies hush-up
    all their major blunders, and explaining a $30 million
    loss to the
    shareholders would have been difficult. Give them
    their due, though,
    they made it work in the end.
    Interviewer: They did? Well, there you are then, it
    proves O-O works.
    Stroustrup: Well, almost. The executable was so huge,
    it took five
    minutes to load, on an HP workstation, with 128MB of
    RAM. Then it ran
    like treacle. Actually, I thought this would be a
    stumbling-block, and I'd get found out within a week,
    but nobody
    cared. Sun and HP were only too glad to sell
    enormously powerful
    boxes, with huge resources just to run trivial
    programs. You know,
    when we had our first C++ compiler, at AT&T, I
    compiled 'Hello World',
    and couldn't believe the size of the executable. 2.1MB
    Interviewer: What? Well, compilers have come a long
    way, since then.
    Stroustrup: They have? Try it on the latest version of
    g++ - you won't
    get much change out of half a megabyte. Also, there
    are several quite
    recent examples for you, from all over the world.
    British Telecom had
    a major disaster on their hands but, luckily, managed
    to scrap the
    whole thing and start again. They were luckier than
    Telecom. Now I hear that Siemens is building a
    dinosaur, and getting
    more and more worried as the size of the hardware gets
    bigger, to
    accommodate the executables. Isn't multiple
    inheritance a joy?
    Interviewer: Yes, but C++ is basically a sound
    Stroustrup: You really believe that, don't you? Have
    you ever sat down
    and worked on a C++ project? Here's what happens:
    First, I've put in
    enough pitfalls to make sure that only the most
    trivial projects will
    work first time. Take operator overloading. At the end
    of the project,
    almost every module has it, usually, because guys feel
    they really
    should do it, as it was in their training course. The
    same operator
    then means something totally different in every
    module. Try pulling
    that lot together, when you have a hundred or so
    modules. And as for
    data hiding. God, I sometimes can't help laughing when
    I hear about
    the problems companies have making their modules talk
    to each other. I
    think the word 'synergistic' was specially invented to
    twist the knife
    in a project manager's ribs.
    Interviewer: I have to say, I'm beginning to be quite
    appalled at all
    this. You say you did it to raise programmers'
    salaries? That's
    Stroustrup: Not really. Everyone has a choice. I
    didn't expect the
    thing to get so much out of hand. Anyway, I basically
    succeeded. C++
    is dying off now, but programmers still get high
    salaries - especially
    those poor devils who have to maintain all this crap.
    You do realise,
    it's impossible to maintain a large C++ software
    module if you didn't
    actually write it?
    Interviewer: How come?
    Stroustrup: You are out of touch, aren't you? Remember
    the typedef?
    Interviewer: Yes, of course.
    Stroustrup: Remember how long it took to grope through
    the header
    files only to find that 'RoofRaised' was a double
    precision number?
    Well, imagine how long it takes to find all the
    implicit typedefs in
    all the Classes in a major project.
    Interviewer: So how do you reckon you've succeeded?
    Stroustrup: Remember the length of the average-sized
    'C' project?
    About 6 months. Not nearly long enough for a guy with
    a wife and kids
    to earn enough to have a decent standard of living.
    Take the same
    project, design it in C++ and what do you get? I'll
    tell you. One to
    two years. Isn't that great? All that job security,
    just through one
    mistake of judgement. And another thing. The
    universities haven't been
    teaching 'C' for such a long time, there's now a
    shortage of decent
    'C' programmers. Especially those who know anything
    about Unix systems
    programming. How many guys would know what to do with
    'malloc', when
    they've used 'new' all these years - and never
    bothered to check the
    return code. In fact, most C++ programmers throw away
    their return
    codes. Whatever happened to good ol' '-1'? At least
    you knew you had
    an error, without bogging the thing down in all that
    'throw' 'catch'
    'try' stuff.
    Interviewer: But, surely, inheritance does save a lot
    of time?
    Stroustrup: Does it? Have you ever noticed the
    difference between a
    'C' project plan, and a C++ project plan? The planning
    stage for a C++
    project is three times as long. Precisely to make sure
    that everything
    which should be inherited is, and what shouldn't
    isn't. Then, they
    still get it wrong. Whoever heard of memory leaks in a
    'C' program?
    Now finding them is a major industry. Most companies
    give up, and send
    the product out, knowing it leaks like a sieve, simply
    to avoid the
    expense of tracking them all down.
    Interviewer: There are tools...
    Stroustrup: Most of which were written in C++.
    Interviewer: If we publish this, you'll probably get
    lynched, you do
    realise that?
    Stroustrup: I doubt it. As I said, C++ is way past its
    peak now, and
    no company in its right mind would start a C++ project
    without a pilot
    trial. That should convince them that it's the road to
    disaster. If
    not, they deserve all they get. You know, I tried to
    convince Dennis
    Ritchie to rewrite Unix in C++.
    Interviewer: Oh my God. What did he say?
    Stroustrup: Well, luckily, he has a good sense of
    humor. I think both
    he and Brian figured out what I was doing, in the
    early days, but
    never let on. He said he'd help me write a C++ version
    of DOS, if I
    was interested.
    Interviewer: Were you?
    Stroustrup: Actually, I did write DOS in C++, I'll
    give you a demo
    when we're through. I have it running on a Sparc 20 in
    the computer
    room. Goes like a rocket on 4 CPU's, and only takes up
    70 megs of
    Interviewer: What's it like on a PC?
    Stroustrup: Now you're kidding. Haven't you ever seen
    Windows '95? I
    think of that as my biggest success. Nearly blew the
    game before I was
    ready, though.
    Interviewer: You know, that idea of a Unix++ has
    really got me
    thinking. Somewhere out there, there's a guy going to
    try it.
    Stroustrup: Not after they read this interview.
    Interviewer: I'm sorry, but I don't see us being able
    to publish any of this.
    Stroustrup: But it's the story of the century. I only
    want to be
    remembered by my fellow programmers, for what I've
    done for them. You
    know how much a C++ guy can get these days?
    Interviewer: Last I heard, a really top guy is worth
    $70 - $80 an hour.
    Stroustrup: See? And I bet he earns it. Keeping track
    of all the
    gotchas I put into C++ is no easy job. And, as I said
    before, every
    C++ programmer feels bound by some mystic promise to
    use every damn
    element of the language on every project. Actually,
    that really annoys
    me sometimes, even though it serves my original
    purpose. I almost like
    the language after all this time.
    Interviewer: You mean you didn't before?
    Stroustrup: Hated it. It even looks clumsy, don't you
    agree? But when
    the book royalties started to come in... well, you get
    the picture.
    Interviewer: Just a minute. What about references? You
    must admit, you
    improved on 'C' pointers.
    Stroustrup: Hmm. I've always wondered about that.
    Originally, I
    thought I had. Then, one day I was discussing this
    with a guy who'd
    written C++ from the beginning. He said he could never
    whether his variables were referenced or dereferenced,
    so he always
    used pointers. He said the little asterisk always
    reminded him.
    Interviewer: Well, at this point, I usually say 'thank
    you very much'
    but it hardly seems adequate.
    Stroustrup: Promise me you'll publish this. My
    conscience is getting
    the better of me these days.
    Interviewer: I'll let you know, but I think I know
    what my editor will say.
    Stroustrup: Who'd believe it anyway? Although, can you
    send me a copy
    of that tape?
    Interviewer: I can do that.
  7. escape7

    escape7 What? Where? How?

    Dec 23, 2004
    Likes Received:
    Trophy Points:
    that was a nice article you gave, enjoyed reading it. :)
  8. escape7

    escape7 What? Where? How?

    Dec 23, 2004
    Likes Received:
    Trophy Points:
    Mathematically u can say : 'c' is a subset of "c++"
  9. maverickrohan

    maverickrohan SABER RIDER

    Dec 23, 2004
    Likes Received:
    Trophy Points:
    Atlanta, GA, USA
    vhooo..........that was a revelation...........i hope this aint some internet hoax!!!
  10. rajas

    rajas New Member

    Feb 22, 2004
    Likes Received:
    Trophy Points:
    Pearl City, Hyderabad.
    Nice artilce. Dont really understand y Bjarne saying all these.
  11. Calcatian

    Calcatian New Member

    Apr 21, 2005
    Likes Received:
    Trophy Points:
    The throne at the royal palace of Smiley Kingdom!
    C vs C++

    :D If there is one thing you guys are good at - its making a thing as much complicated as possible :!: Don't worry imagineer_aman, here is a simpler explanation :arrow:

    You see "C" has got no class, so if you wanna be a digital majdoor and spend your life away with humongous code-crunching, then "c" is gonna be your tool :wink: And belive me, you will get a good job, people all over the world will use firmwares and other good stuff that you wrote but no one will know your name :!:

    Now, C++ on the other hand is all classy (not classic - that's C), so if you are like me you will learn C++ lingo (like I did when I was your age) and quickly upgrade yourself to its latest offspring VC++.net (which is a gr8 thing contrary to what some bozos may say as apps developed with it runs noticably faster than any other RAD tool) and earn your shot to fame :!:
    For example, if I disclose my real identity in here, no matter who they are or where they're from - 99.99% of the members will instantly recognize me :!: So there you have it.

    :wink: (Now, I wonder why I tend to use lots of parentheses whenever i'm typing anything) :!:
  12. escape7

    escape7 What? Where? How?

    Dec 23, 2004
    Likes Received:
    Trophy Points:
    Re: C vs C++

    OK then, how ab't telling us who the hell r u?
  13. OP

    imagineer_aman New Member

    May 7, 2005
    Likes Received:
    Trophy Points:
    13°7'35"N 80°6'13"E
    First of all THanks guys,for letting me know that it was a gud article. i too thght so.
    Abt the main theme - c or c++?why companies use c even when theres a better version or superset c++?
    Heres what i can make of all the inputs i got from u.

    1)a novice shud learn both c and c++.
    2)Based on what the appln is wither of the two must be preferred. For eg:for device manager files,c must be used. For other stuff like small games(i aint sure exactly what stuff), c++ must be used.
    3)companies prefer c or c++ based on point2 and the efficiency of the language.

    If i m wrong pls correct me.

    Also Dear Calcatian, we wud all like to know the famous celebrity whom we talked to(and what do u have to say abt Bjarne's interview?)!!!
  14. Calcatian

    Calcatian New Member

    Apr 21, 2005
    Likes Received:
    Trophy Points:
    The throne at the royal palace of Smiley Kingdom!
    Re: C vs C++

    You want the truth :?: You can't handle the truth :!:

  15. bharat_r

    bharat_r New Member

    Mar 2, 2004
    Likes Received:
    Trophy Points:
    I can handle it.Tell!
  16. Alexander_H

    Alexander_H New Member

    Jan 23, 2005
    Likes Received:
    Trophy Points:
  17. ~Phenom~

    ~Phenom~ The No.1 Stupid

    May 17, 2005
    Likes Received:
    Trophy Points:
    CALCATIAN wrote :
    if I disclose my real identity in here, no matter who they are or where they're from - 99.99% of the members will instantly recognize me Exclamation So there you have it.

    we all are good exception handlers here

    just tell us who r u???

    a garbage value or a dangling reference???
  18. mukul

    mukul New Member

    May 3, 2005
    Likes Received:
    Trophy Points:

    i can tell u a simpler way to go into all details
    if u r a digit subscriber

    look out for april 2005 dvd
    u 'll find thinking in c++ by Mr. Bruce Arkel
    read it's first chapter and ur doubts will be gone
  19. OP

    imagineer_aman New Member

    May 7, 2005
    Likes Received:
    Trophy Points:
    13°7'35"N 80°6'13"E
    thanks Alexander for the link....Thanks to Mukul for tellin me abt thinkin in c++ text.i'll surely check it out!
  20. Thor

    Thor Member

    Jun 9, 2004
    Likes Received:
    Trophy Points:
Thread Status:
Not open for further replies.

Share This Page