A good C Programming book.

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • G.

    A good C Programming book.

    Hi all,

    During my degree, BEng (Hons) Electronics and Communications Engineering, we
    did C programming every year, but I never kept it up, as I had no interest
    and didn't see the point. But now I really want to get back into it as I see
    a point with GNU/Linux. I want to get my old skills back and write something
    or help on some projects etc.

    I need some good books. I used to have one called "A Book On C", but sold
    it,
    and I have been reading various tutorials on the web and the many devoted
    websites.

    Anyone have any recommendations ?

    One more question, should I go for C or C++? Which will benefit me more with
    GNU/Linux?

    Thanks for your time,

    - --
    Regards





  • Leo Custodio

    #2
    Re: A good C Programming book.

    G.,

    There are many aspects to consider when choosing a C book. "Problem Solving
    and Program Design in C" (Hanly J., Koffman E.) is a very good one, for
    beg./int. level; "C Programming Language" (Kernighan B., Ritchie D.) is also
    a very good. If the person has clearly no idea of C, programming and
    programming logic, I would say "C for Dummies" (Gookin D.)would be the best.
    (Many will scream at me for that, sorry!).
    Regarding your choice between C and C++....hard to say, even with "Which
    will benefit me more with GNU/Linux?"
    Depending on what type of application you will develop in Linux, C++ (object
    oriented) might be better. But if what you will be doing is apply changes to
    the kernel, or help out with current projects, C is better (as for they
    currently use it).
    My answer is: I don't know. (But I use C!) ;)

    Hope I've helped.
    Leo Custodio
    aliensprite@hot mail.com

    --
    -----BEGIN PGP PUBLIC KEY BLOCK-----
    Version: 2.6.2

    mQCNAz/nyswAAAEEAM1Jl1 4YqNlrUGmr4vh5O KGbDg5qiFnY/Ioqa5j5j9jlTsiH
    7EJNlhIvu5OV223 D0REUmWbFaKBQln ZAaDRRROb52YPuZ 8NQfyu/C5zvTz8qubEx
    jWn+nYryqKZxQsD wjntkNIMxx5n+QB 7WhDltenCFE/VxYhsTa59EWqUqk z/RAAUR
    tC5MZW9uYXJkbyB DLiBDdXN0b2Rpby A8YWxpZW5zcHJpd GVAaG90bWFpbC5j b20+
    =xAh5
    -----END PGP PUBLIC KEY BLOCK-----


    Comment

    • G.

      #3
      Re: A good C Programming book.


      "Leo Custodio" <lcustoc611@rog ers.com> wrote in message
      news:H4lIb.1701 99$2We1.7251@ne ws04.bloor.is.n et.cable.rogers .com...[color=blue]
      > G.,
      >
      > There are many aspects to consider when choosing a C book. "Problem[/color]
      Solving[color=blue]
      > and Program Design in C" (Hanly J., Koffman E.) is a very good one, for
      > beg./int. level; "C Programming Language" (Kernighan B., Ritchie D.) is[/color]
      also[color=blue]
      > a very good. If the person has clearly no idea of C, programming and
      > programming logic, I would say "C for Dummies" (Gookin D.)would be the[/color]
      best.[color=blue]
      > (Many will scream at me for that, sorry!).
      > Regarding your choice between C and C++....hard to say, even with "Which
      > will benefit me more with GNU/Linux?"
      > Depending on what type of application you will develop in Linux, C++[/color]
      (object[color=blue]
      > oriented) might be better. But if what you will be doing is apply changes[/color]
      to[color=blue]
      > the kernel, or help out with current projects, C is better (as for they
      > currently use it).
      > My answer is: I don't know. (But I use C!) ;)[/color]

      I decided to get a cheap one off ebay, and I got "Practical C++ Programming"
      by O'reilly for £6, I am looking for the K&R one and the "Practical C
      Programming" by O'reilly too. I think I will start with C first, as I am
      familar with it, and general programming practice, then when/if I do some
      gui work, start on C++.

      Thanks for your time,

      Gavin.
      [color=blue]
      >
      > Hope I've helped.
      > Leo Custodio
      > aliensprite@hot mail.com
      >
      > --
      > -----BEGIN PGP PUBLIC KEY BLOCK-----
      > Version: 2.6.2
      >
      > mQCNAz/nyswAAAEEAM1Jl1 4YqNlrUGmr4vh5O KGbDg5qiFnY/Ioqa5j5j9jlTsiH
      > 7EJNlhIvu5OV223 D0REUmWbFaKBQln ZAaDRRROb52YPuZ 8NQfyu/C5zvTz8qubEx
      > jWn+nYryqKZxQsD wjntkNIMxx5n+QB 7WhDltenCFE/VxYhsTa59EWqUqk z/RAAUR
      > tC5MZW9uYXJkbyB DLiBDdXN0b2Rpby A8YWxpZW5zcHJpd GVAaG90bWFpbC5j b20+
      > =xAh5
      > -----END PGP PUBLIC KEY BLOCK-----
      >
      >[/color]


      Comment

      • G.

        #4
        Re: A good C Programming book.

        [snip][color=blue]
        >
        > I'd say that K.N. King's book: C a modern approach is a much, much
        > better choice for this person. Gookin's Apple II books weren't all that
        > hot either.[/color]

        I will check this one out too.

        Thanks.


        Comment

        • August Derleth

          #5
          Re: A good C Programming book.

          G. wrote:[color=blue]
          > I decided to get a cheap one off ebay, and I got "Practical C++ Programming"
          > by O'reilly for £6, I am looking for the K&R one and the "Practical C
          > Programming" by O'reilly too.[/color]

          "Practical C Programming" might not be a wise buy, actually. Same with
          "Practical C++ Programming". Neither got good reviews by the ACCU
          (Association of C and C++ Users), which is generally held in high regard.


          -- Review of "Practical C Programming"

          -- Review of "Practical C++ Programming"
          Both got a "Not Recommended" rating.

          -- "Highly Recommended" works, indexed by subject.

          -- ACCU reviews index
          [color=blue]
          > I think I will start with C first, as I am
          > familar with it, and general programming practice, then when/if I do some
          > gui work, start on C++.[/color]

          Don't try to use C as a stepping-stone to C++. It won't work. Good C++
          progams are not good C programs, and vice-versa.

          In fact, don't think of C++ as a descendent of C. Think of it more like
          a distant cousin or nephew. It's changed so much from when it was built
          on top of C, to the point where a conformant C program is no longer
          guaranteed to compile, or work correctly when compiled, in a C++
          environment.


          Comment

          • donLouis

            #6
            Re: A good C Programming book.

            On Tue, 30 Dec 2003 22:18:58 -0000
            "G." <newsgroups@ghe nry.plus.com> wrote:
            [color=blue]
            > I decided to get a cheap one off ebay, and I got "Practical C++ Programming"
            > by O'reilly for £6, I am looking for the K&R one and the "Practical C
            > Programming" by O'reilly too. I think I will start with C first, as I am
            > familar with it, and general programming practice, then when/if I do some
            > gui work, start on C++.[/color]

            You don't have to do GUI work in C++. X, GTK, motif, etc, are all done
            in C. As far as books go:

            "The Standard C Library" by P.J. Plauger
            K&R _second_edition _
            "The C Answer Book" by Tondo & Gimpel
            C FAQ: http://www.eskimo.com/~scs/C-faq/top.html by Steve Summit

            /*OT
            * "The UNIX Programming Environment" by Kernighan & Pike
            * "Software Tools" by Kernighan & Plauger
            * "Programmin g Perls" & "More Programming Perls" by Jon Bentley
            * Any and everything that W. Richard Stevens ever wrote
            OT*/

            --
            donLouis

            Comment

            • G.

              #7
              Re: A good C Programming book.


              "August Derleth" <email@for.addr ess> wrote in message
              news:lTqIb.1$C9 3.0@fe10...[color=blue]
              > G. wrote:[color=green]
              > > I decided to get a cheap one off ebay, and I got "Practical C++[/color][/color]
              Programming"[color=blue][color=green]
              > > by O'reilly for £6, I am looking for the K&R one and the "Practical C
              > > Programming" by O'reilly too.[/color]
              >
              > "Practical C Programming" might not be a wise buy, actually. Same with
              > "Practical C++ Programming". Neither got good reviews by the ACCU
              > (Association of C and C++ Users), which is generally held in high regard.
              >
              > http://www.accu.org/cgi-bin/accu/rvo...&file=p001735a
              > -- Review of "Practical C Programming"
              > http://www.accu.org/cgi-bin/accu/rvo...&file=p001010a
              > -- Review of "Practical C++ Programming"
              > Both got a "Not Recommended" rating.
              > http://www.accu.org/bookreviews/publ.../0hr/index.htm
              > -- "Highly Recommended" works, indexed by subject.
              > http://www.accu.org/bookreviews/public/
              > -- ACCU reviews index
              >[color=green]
              > > I think I will start with C first, as I am
              > > familar with it, and general programming practice, then when/if I do[/color][/color]
              some[color=blue][color=green]
              > > gui work, start on C++.[/color]
              >
              > Don't try to use C as a stepping-stone to C++. It won't work. Good C++
              > progams are not good C programs, and vice-versa.
              >
              > In fact, don't think of C++ as a descendent of C. Think of it more like
              > a distant cousin or nephew. It's changed so much from when it was built
              > on top of C, to the point where a conformant C program is no longer
              > guaranteed to compile, or work correctly when compiled, in a C++
              > environment.[/color]


              I have read over the accu site and it sounds like the C++ is rubbish. I have
              bid on the K&R one, as everyone recommends that. Well that other C++ was a
              waste of money. I will also stick with C just now as that's what I kind of
              know.

              Thanks,

              Gavin.



              Comment

              • Manish Singh

                #8
                Re: A good C Programming book.

                "G." <newsgroups@ghe nry.plus.com> wrote in message news:<TkkIb.683 8$tQ6.73130@war ds.force9.net>. ..[color=blue]
                > Hi all,
                >
                > During my degree, BEng (Hons) Electronics and Communications Engineering, we
                > did C programming every year, but I never kept it up, as I had no interest
                > and didn't see the point. But now I really want to get back into it as I see
                > a point with GNU/Linux. I want to get my old skills back and write something
                > or help on some projects etc.
                >
                > I need some good books. I used to have one called "A Book On C", but sold
                > it,
                > and I have been reading various tutorials on the web and the many devoted
                > websites.
                >
                > Anyone have any recommendations ?[/color]

                "A Book on C" is a very good primer on C. Selling it was definitely a bad
                decision. Look forward to get it back again.

                Other books of interest are:
                1> C Primer Plus, 4th edition - Stephen Prata. Sams
                2> C : How to Program, 3rd or 4th edition - Deitel & Deitel
                3> The C Programming Language, ANSI C 2nd edition - K&R
                4> C Traps and Pitfalls - Andrew Koenig
                5> Practice of Programming - Kernighan & Pike
                6> Code Complete - Steve McConnell, Microsoft Press
                7> Applications Programming in ANSI C, 3rd ed. - Johnsonbaugh & Kalin
                8> C Programming FAQs - Steve Summit
                9> C Unleashed - Richard Heathfield et al. (level: advanced)
                10> How to Solve it by Computer
                11> The Standard C Library - Plauger
                12> C : A Reference Manual - Harbison & Steele, 5th ed.
                13> Expert C Programming : Deep C Secters - Peter van der Linden
                14> The Art Of Computer Programming, 3 volumes - Knuth
                15> C Interfaces and Implementations : Techniques for Creating Reusable
                Software - David Hanson ( Haven't read it myself, yet)
                16> Algorithms in C, part 1-5 - Sedgewick
                17> Inner Loops - Rick Booth
                18> Programming Pearls, 2nd ed. - John Bentley
                19> The C Puzzle Book - Feuer (haven't read it either)
                20> Data Structures Using C - Tanenbaum, Langsam

                It's always possible to get more books than you can read.
                However, almost all of the above mentioned ones are, IMHO, classics.
                If you'll be using UNIX/Linux as your development platorm, you should also
                consider getting a few of these books:

                1> Advanced Programming in UNIX Environment - Richard Stevens
                2> UNIX Network Programming, 2nd ed. vol-1,2 - Richard Stevens
                3> TCP/IP Illustrated, vol-1,2,3 - Richard Stevens
                4> The UNIX Programming Environment - Kernighan & Pike
                5> The Art of UNIX Programming - Eric S. Raymond
                6> Linux Kernel Internals - Beck, et al.

                Plus, books on Tcl/Tk, Perl, Python, GCC and Linux API are added advantage.
                [color=blue]
                > One more question, should I go for C or C++? Which will benefit me more with
                > GNU/Linux?
                >[/color]

                It's good for you to start with C. UNIX and Linux are mostly C based operating
                systems, except some C++ code in X clients like KDE. However, it's considered
                bad to stick to any one programming language. To get the most from UNIX or
                Linux systems, you'll have to learn to work with a plethora of utilities,
                shells, scripting languages, interpreters and compiled languages.

                A very happy new year to all of you!
                Regards,
                Manish

                Comment

                • Michael Steve

                  #9
                  Re: A good C Programming book.


                  "G." <newsgroups@ghe nry.plus.com> wrote in message
                  news:TkkIb.6838 $tQ6.73130@ward s.force9.net...[color=blue]
                  > Hi all,
                  >
                  > During my degree, BEng (Hons) Electronics and Communications Engineering,[/color]
                  we[color=blue]
                  > did C programming every year, but I never kept it up, as I had no interest
                  > and didn't see the point. But now I really want to get back into it as I[/color]
                  see[color=blue]
                  > a point with GNU/Linux. I want to get my old skills back and write[/color]
                  something[color=blue]
                  > or help on some projects etc.
                  >
                  > I need some good books. I used to have one called "A Book On C", but sold
                  > it,
                  > and I have been reading various tutorials on the web and the many devoted
                  > websites.
                  >
                  > Anyone have any recommendations ?
                  >
                  > One more question, should I go for C or C++? Which will benefit me more[/color]
                  with[color=blue]
                  > GNU/Linux?
                  >
                  > Thanks for your time,
                  >
                  > - --
                  > Regards
                  >
                  > http://www.magicfx.co.uk
                  > http://www.suretecsystems.com
                  >[/color]

                  I keep in my arsenal of C books a very good reference text. It won't teach
                  you good programming skills, but it will have information handy when you
                  have a good C question. Its organzation of information is very good.

                  Harbison, Samuel P., and Guy L. Steele Jr. 'C A reference Manual'. 4th Ed.
                  New Jersey: Prentice Hall, 1995.

                  Michael Steve


                  Comment

                  • Rod

                    #10
                    Re: A good C Programming book.

                    Hello there, being a newbie to C and the forum, I've been reading these post
                    and have another suggestion for you.
                    I am currently on my 2nd year Meng and learning the dreaded C/C++.
                    I have some of the books noted and all have been very useful, but here is
                    another suggestion that I came across last year, it comes in the from of
                    training videos from http://www.vtc.com/uk.php
                    The C programming vids are extremely useful, don't rate the C++ though.
                    With full working programs and exercises as well as a course project to work
                    through it has helped me out when stuck.
                    Only problem is the price!!!!
                    "G." <newsgroups@ghe nry.plus.com> wrote in message
                    news:TkkIb.6838 $tQ6.73130@ward s.force9.net...[color=blue]
                    > Hi all,
                    >
                    > During my degree, BEng (Hons) Electronics and Communications Engineering,[/color]
                    we[color=blue]
                    > did C programming every year, but I never kept it up, as I had no interest
                    > and didn't see the point. But now I really want to get back into it as I[/color]
                    see[color=blue]
                    > a point with GNU/Linux. I want to get my old skills back and write[/color]
                    something[color=blue]
                    > or help on some projects etc.
                    >
                    > I need some good books. I used to have one called "A Book On C", but sold
                    > it,
                    > and I have been reading various tutorials on the web and the many devoted
                    > websites.
                    >
                    > Anyone have any recommendations ?
                    >
                    > One more question, should I go for C or C++? Which will benefit me more[/color]
                    with[color=blue]
                    > GNU/Linux?
                    >
                    > Thanks for your time,
                    >
                    > - --
                    > Regards
                    >
                    > http://www.magicfx.co.uk
                    > http://www.suretecsystems.com
                    >
                    >[/color]


                    Comment

                    • Ben Pfaff

                      #11
                      Re: A good C Programming book.

                      "Rod" <rhodri.bowen@n tlworld.com> writes:
                      [color=blue]
                      > I am currently on my 2nd year Meng and learning the dreaded C/C++.[/color]

                      Really? You'll have to let the rest of us know where we can find
                      out more about this language.
                      --
                      int main(void){char p[]="ABCDEFGHIJKLM NOPQRSTUVWXYZab cdefghijklmnopq rstuvwxyz.\
                      \n",*q="kl BIcNBFr.NKEzjwC IxNJC";int i=sizeof p/2;char *strchr();int putchar(\
                      );while(*q){i+= strchr(p,*q++)-p;if(i>=(int)si zeof p)i-=sizeof p-1;putchar(p[i]\
                      );}return 0;}

                      Comment

                      • tinybyte

                        #12
                        Re: A good C Programming book.

                        On Wed, 31 Dec 2003 14:33:56 -0800, Manish Singh wrote:[color=blue]
                        > 6> Linux Kernel Internals - Beck, et al.[/color]

                        This is outdated! Instead get both this two:
                        1) Understanding the Linux Kernel, 2nd Ed.
                        by Cesati, Bovet - O'Reilly
                        2) IA-64 Linux Kernel: Design and Implementation
                        by mosberger, eranian - Prentice Hall

                        Then you should read Kernel Traffic at http://kt.zork.net
                        and if you're a beginner at kernel hacking subscribe to
                        http://www.kernelnewbies.org mailing list.

                        Then if you need more, ask elsewhere because this is
                        off-topic here! :) try on alt.os.developm ent or comp.unix.inter nals.

                        Bye
                        Daniele

                        Comment

                        • Anand

                          #13
                          Re: A good C Programming book.

                          Hi


                          Seen ur qurey. Hope u need sound understanding in c programming. If
                          u r interested to improve ur knowledge in c follow this book. "C with
                          software Engineering Approach" by Peter A Darnel.

                          Cheers!

                          Anand.

                          Comment

                          Working...