LinuxLinks.com
Newbies What Next ? News Forums Calendar

Search





News Sections
Home
General News (3987/0)
Reviews (636/0)
Press Releases (465/0)
Distributions (197/0)
Software (907/0)
Hardware (537/0)
Security (192/0)
Tutorials (356/0)
Off Topic (181/0)


User Functions
Username:

Password:

Don't have an account yet? Sign up as a New User


Events
There are no upcoming events




9 of the Best Free C Books - Part 3

9 of the Best Free C Books - Part 3

7. Object-Oriented Programming with ANSI-C

Object-Oriented Programming with ANSI-C
Website www.cs.rit.edu/~ats/books/ooc.pdf
Author Axel-Tobias Schreiner
Format PDF
Pages 223

Object-Oriented Programming with ANSI-C uses ANSI-C to discover how object-oriented programming is done, what its techniques are, why they help us solve bigger problems, and how we harness generality and program to catch mistakes earlier.

Chapters include:

  • Abstract Data Types
  • Dynamic Linkage:
  • Programming Savvy - Write a small program to read and evaluate arithmetic expressions consisting of floating point numbers, parentheses and the usual operators for addition, subtraction, and so on
  • Inheritance - Code Reuse and Refinement
  • Programming Savvy - Symbol Table
  • Class Hierachy
  • The ooc Preprocessor - looks at the design of a preprocessor ooc which helps readers to stick to programming conventions
  • Dynamic Type Checking - Defensive Programming
  • Static Construction - Self-Organization
  • Delegates
  • Class Methods - Plugging Memory Leaks
  • Persistent Objects - Storing and Loading Data Structures
  • Exceptions - Disciplined Error Recovery
  • Forwarding Messages - Looks at a rather typical problem: one object hierarchy we build ourselves to create an application, and another object hierarchy is more or less imposed upon us, because it deals with system facilities such as a graphical user interface (GUI, the pronunciation indicates the generally charming qualities).

8.†Writing Bug-Free C Code

Writing Bug-Free C Code
Website www.duckware.com/bugfreec/index.html
Author Jerry Jongerius
Format HTML
Pages 218

Advocating a style of C programming based upon data abstraction (classes) and run-time object verification, Writing Bug-Free C Code describes a technique that results in virtually bug-free code from the beginning. It details the key to writing bug-free code; the class methodology; designing modules; general tips; and a style guide. It is designed for C programmers interested in writing bug-free code.

The class methodology helps to prevent bugs by making it easier to write C code. It does this by eliminating data structures (class declarations) from include files, which makes a project easier to understand (because there is not as much global information), which makes it easier to write C code, which helps to eliminate bugs. This class methodology, which uses private class declarations, is different from C++, which uses public class declarations.

The class methodology helps detect bugs by providing for both compile- time and run-time type checking of pointers (handles) to class objects. This run-time type checking catches a lot of bugs for you since invalid object handles (the cause of a lot of bugs) are automatically detected and reported.

In the end, this book is all about the techniques used to write virtually bug-free code.

9. Beej's Guide to C Programming

Beej's Guide to C Programming
Website beej.us/guide/bgc/
Author Brian "Beej" Hall
Format HTML (single page), HTML (All on one page), PDF, PostScript
Pages 130

Beej's Guide to C Programming tries to lead the reader from complete and utter sheer lost confusion on to the sort of enlightened bliss that can only be obtained though pure C programming.

Chapters:

  • Programming Building Blocks
  • Variables, Expressions, and Statements - A variable is simply a name for a number. An expression in C consists of other expressions optionally put together with operators. Examines the if, while, do-while, and the for statements
  • Building Blocks Revisited
  • Functions - put some of those building blocks in their own functions when they become too large, or when they do a different thing than the rest of the code
  • Variables, the Sequel - talks about variable scope and storage classes
  • Pointers - they are the address of data. Just like an int can be 12, a pointer can be the address of data
  • Structures - a construct that allows you to logically group variables into groups. You can then reference the group as a whole
  • Arrays - a linear collection of related data
  • Strings - a string in C is a sequence of bytes in memory that usually contains a bunch of letters
  • Dynamic Memory - explores the malloc(), free(), realloc(), and calloc() functions
  • More Stuff - topics include pointer arithmetic, typedef, enum, struct declarations, command line arguments, multidimensional arrays, casting and promotion, incomplete types, void pointers, NULL pointers, and static keywords
  • Standard I/O Library - used for reading from and writing to files
  • String Manipulation - find functions for pulling substrings out of strings, concatenating strings together, getting the length of a string, and more
  • Mathematics - functions that will serve your general purpose mathematical needs

This book is licensed under the Creative Commons Attribution-Noncommercial- No Derivative Works 3.0 License.

Back to the Beginning: 9 of the Best Free C Books - Part 1

This article is divided into three parts:

Part 1, Part 2, Part 3

Bookmark and Share


Last Updated Sunday, May 25 2014 @ 06:03 AM EDT


We have written a range of guides highlighting excellent free books for popular programming languages. Check out the following guides: C, C++, C#, Java, JavaScript, CoffeeScript, HTML, Python, Ruby, Perl, Haskell, PHP, Lisp, R, Prolog, Scala, Scheme, Forth, SQL, Node.js (new), Fortran (new), Erlang (new), Pascal (new), and Ada (new).


Group Tests
100 Essential Apps
All Group Tests


Top Free Software
5 Office Suites
3 Lean Desktops
7 Document Processors
4 Distraction Free Tools
9 Project Management
4 Business Solutions
9 Groupware Apps
14 File Managers
10 Databases
21 Backup Tools
21 Productivity Tools
5 Note Taking Apps
9 Terminal Emulators
21 Financial Tools
5 Bitcoin Clients
21 Text Editors
21 Video Emulators
21 Home Emulators
42 Graphics Apps
6 CAD Apps
42 Scientific Apps
10 Web Browsers
42 Email Apps
12 Instant Messaging
10 IRC Clients
7 Twitter Clients
12 News Aggregators
11 VoIP Apps
42 Best Games
9 Steam Games
42 Audio Apps
5 Music Streaming
42 Video Apps
5 YouTube Tools
80 Security Apps
9 System Monitoring
8 Geometry Apps
Free Console Apps
14 Multimedia
4 Audio Grabbers
9 Internet Apps
3 HTTP Clients
5 File Managers
Programming
8 Compilers
9 IDEs
9 Debuggers
7 Revision Control Apps
6 Doc Generators
Free Web Software
21 Web CMS
14 Wiki Engines
8 Blog Apps
6 eCommerce Apps
5 Human Resource Apps
10 ERP
10 CRM
6 Data Warehouse Apps
8 Business Intelligence
6 Point-of-Sale

Other Articles
Migrating from Windows
Back up your data
20 Free Linux Books
24 Beginner Books
12 Shell Scripting Books


Older Stories
Monday 03/09
  • Raspberry Pi 2: Raspbian (ARMv6) v Linaro (ARMv7) (0)

  • Friday 03/06
  • Raspberry Pi 2 review (0)

  • Sunday 02/22
  • Chess in a Few Bytes (0)
  • Learn the Art of Computer Programming With These Great Free Beginner Books (2)
  • CD Audio Grabbers (0)

  • Monday 01/19
  • fitlet is a tiny fanless PC full of openness (0)

  • Sunday 01/18
  • MintBox Mini gives Linux users a pocket-sized PC (0)
  • 6 Invaluable Assembly Books (0)

  • Wednesday 01/14
  • Why Mac users donít switch to Linux (0)
  • MIPS Creator CI20 review (0)


  • Vote

    What Linux distribution do you run on your main computer?

    Debian
    Fedora
    Mint
    Slackware
    openSuSE
    Arch
    Ubuntu
    Redhat
    Mageia
    CentOS
    FreeBSD
    Results
    671 votes | 3 comments

    Built with GeekLog and phpBB
    Comments to the webmaster are welcome
    Copyright 2009 LinuxLinks.com - All rights reserved