1. IMPORTANT:
    We launched a new online community and this space is now closed. This community will be available as a read-only resources until further notice.
    JOIN US HERE

C/C++ resources?

Discussion in 'REAKTOR' started by onelouder, Jul 28, 2005.

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

    onelouder NI Product Owner

    Messages:
    22
    Can anyone recommend any resources on the web for venturing into C/C++ programming?

    Thanks.
     
  2. _nico

    _nico NI Product Owner

    Messages:
    172
    Just google. You will find a lot.

    Or go directly to the source: http://www.research.att.com/~bs/

    I started my C/C++ self education about 3 years ago and still have a lot to learn so "Patience".
    Their are a lot of books around, but personnaly if I had to start now, I will buy just one to get me started "C++ Primer (4th edition) by Stanley B. Lippman, Josée Lajoie, Barbara E. Moo".
    Then buy all the advance serie "(C++ in Depth Series)".
    And of course the Book by Bjarn Stroupstrup "the C++ programming language".
    Have fun ..
     
  3. mpauley

    mpauley NI Product Owner

    Messages:
    2
    Kernighan / Ritchie: The C Programming language for straight C (no objects, no overhead). The manual from the inventors is actually pretty good in this case.

    I found that plain, ascii C was nice to know because you might want to program a PIC or some microcontroller some day and those seem to mostly come with C compilers.
     
  4. BobTheDog

    BobTheDog NI Product Owner

    Messages:
    1,339
  5. John Nowak

    John Nowak Account Suspended

    Messages:
    3,493
    Buy "C Programming: A Modern Approach" by K.N. King.
     
  6. John Nowak

    John Nowak Account Suspended

    Messages:
    3,493
    I disagree entirely! Arrgh!
     
  7. BobTheDog

    BobTheDog NI Product Owner

    Messages:
    1,339
    First some background (probably boring for most but it interests me!):

    C was initially developed between 1969 and 1973 along with the early development in unix, updated between 1977 and 1979 when portability of unix was becoming an issue, and standardized by ANSI in the mid 80's.

    C was based on a language called B which was based on a language called BCPL which was a typeless language just above assembler in complexity.

    BCPL, B and C are traditional procedural languages that are oriented towards system programming.


    Also in the 60's other people where having the idea that procedural languages were not the best tool to deal with the design and implementation of complex computer systems. especially ones that modeled the real world in someway, many of these real-world systems contained hundreds or thousands of interacting parts which made them hard to model useing procedural languages.

    In 1966 a language called Simular-1 came along, the modules defined by Simular were based not on procedures, but on objects. Each object had its own behaviour and data. This language was designed to aid in simulations or real world systems and in many peoples opinion was a major step forward in software development.


    C++ has its roots in a project to simulate software running on a distributed system which was written in Simular, this is where the designer of C++ got the idea of combining the ideas in Simula with the syntax of C. He basically chose C as he worked for Bell Labs and they liked a bit of C. C++ Is not a fully object oriented like languages such as Smalltalk or Eiffel which are worth a look if you are interested.



    SO we have two strands of programming languages Procedural and Object-Oriented (OO). All new language designs are based on the OO model the design of new procedural languages is basically dead.

    Now if I wanted to start learning to program I would not want to learn a procedural language, people that first learn procedural languages find it harder to move to the OO way of looking at things than people that learn OO first.

    Also there is not real overhead in C++ over C, this is an urban myth. Lots of embedded systems are now written in C++ rather than C.

    There is also the fact that C is a fairly nasty language, but saying that so is C++!

    Learn smalltalk instead thats what I say.

    Cheers

    Andy
     
Thread Status:
Not open for further replies.