C Programming/Print version
From Wikibooks, the open-content textbooks collection
C Programming
The current, editable version of this book is available in Wikibooks, the open-content
textbooks collection, at
http://en.wikibooks.org/wiki/C_Programming
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation
License, Version 1.2 or any later version published by the Free
Software Foundation; with no Invariant Sections, no Front-Cover
Texts, and no Back-Cover Texts. A copy of the license is included
in the section entitled "GNU Free Documentation License."
PDF version (http://en.wikibooks.org/wiki/Image:C_programming.pdf)
Table of contents
Introduction
Why Learn C
History
What you need before you can learn
Using a Compiler
A Taste of C
1 of 144
Beginning C
Basics of Compilation
Programming Structure and Style
Error Handling
Variables
Simple Input and Output
Simple Math in C
Further Math in C
Program Flow
Procedures and Functions
The Preprocessor
Libraries
Standard libraries
File I/O
Exercises
In-depth C ideas
Arrays & Strings
Pointers and relationship to arrays
Memory Management
String Manipulation
C complex types
Sockets and Networking (UNIX)
Common Practices
Serialization and X-Macros
Coroutines
Typecasting
C and beyond
Weaknesses of C
Language Overloading and Extensions
Combining Languages
Commented Source Code Library
Further reading for windows game programming (http://www.ultimategameprogramming.com
/demoDownload.php?category=DirectX&page=1|)
Computer Programming
The following are C adaptations of articles from the Computer programming book.
Statements
C Reference Tables
This section has some tables and lists of C entities.
C References - The Whole List
C Keywords
2 of 144
Standard C Headers
C Operator Precedence Table
C Data Types
C Compilers Reference List
C Algorithm and Data Structure (http://cprogramminglanguage.net/)
Introduction
Why Learn C?
C is the most commonly used programming language for writing operating systems. Unix was the first operat