Skip to content

C in a Nutshell

Best in textbook rentals since 2012!

ISBN-10: 0596006977

ISBN-13: 9780596006976

Edition: 2005

Authors: Peter Prinz, Tony Crawford

List price: $39.95
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Learning a language--any language--involves a process wherein you learn to rely less and less on instruction and more increasingly on the aspects of the language you've mastered. Whether you're learning French, Java, or C, at some point you'll set aside the tutorial and attempt to converse on your own. It's not necessary to know every subtle facet of French in order to speak it well, especially if there's a good dictionary available. Likewise, C programmers don't need to memorize every detail of C in order to write good programs. What they need instead is a reliable, comprehensive reference that they can keep nearby. C in a Nutshell is that reference. This long-awaited book is a complete…    
Customers also bought

Book details

List price: $39.95
Copyright year: 2005
Publisher: O'Reilly Media, Incorporated
Publication date: 12/26/2005
Binding: Paperback
Pages: 622
Size: 6.00" wide x 9.00" long x 1.25" tall
Weight: 1.584
Language: English

Preface
Language
Language Basics
Characteristics of C
The Structure of C Programs
Source Files
Comments
Character Sets
Identifiers
How the C Compiler Works
Types
Typology
Integer Types
Floating-Point Types
Complex Floating-Point Types (C99)
Enumerated Types
The Type void
Literals
Integer Constants
Floating-Point Constants
Character Constants
String Literals
Type Conversions
Conversion of Arithmetic Types
Conversion of Nonarithmetic Types
Expressions and Operators
How Expressions Are Evaluated
Operators in Detail
Constant Expressions
Statements
Expression Statements
Block Statements
Loops
Selection Statements
Unconditional Jumps
Functions
Function Definitions
Function Declarations
How Functions Are Executed
Pointers as Arguments and Return Values
Inline Functions
Recursive Functions
Variable Numbers of Arguments
Arrays
Defining Arrays
Accessing Array Elements
Initializing Arrays
Strings
Multidimensional Arrays
Arrays as Arguments of Functions
Pointers
Declaring Pointers
Operations with Pointers
Pointers and Type Qualifiers
Pointers to Arrays and Arrays of Pointers
Pointers to Functions
Structures, Unions, and Bit-Fields
Structures
Unions
Bit-Fields
Declarations
General Syntax
Type Names
Typedef Declarations
Linkage of Identifiers
Storage Duration of Objects
Initialization
Dynamic Memory Management
Allocating Memory Dynamically
Characteristics of Allocated Memory
Resizing and Releasing Memory
An All-Purpose Binary Tree
Characteristics
Implementation
Input and Output
Streams
Files
Opening and Closing Files
Reading and Writing
Random File Access
Preprocessing Directives
Inserting the Contents of Header Files
Defining and Using Macros
Conditional Compiling
Defining Line Numbers
Generating Error Messages
The #pragma Directive
The_Pragma Operator
Predefined Macros
Standard Library
The Standard Headers
Using the Standard Headers
Contents of the Standard Headers
Functions at a Glance
Input and Output
Mathematical Functions
Character Classification and Conversion
String Processing
Multibyte Characters
Converting Between Numbers and Strings
Searching and Sorting
Memory Block Handling
Dynamic Memory Management
Date and Time
Process Control
Internationalization
Nonlocal Jumps
Debugging
Error Messages
Standard Library Functions
Basic Tools
Compiling with GCC
The GNU Compiler Collection
Obtaining and Installing GCC
Compiling C Programs with GCC
C Dialects
Compiler Warnings
Optimization
Debugging
Profiling
Option and Environment Variable Summary
Using make to Build C Programs
Targets, Prerequisites, and Commands
The Makefile
Rules
Comments
Variables
Phony Targets
Other Target Attributes
Macros
Functions
Directives
Running make
Debugging C Programs with GDB
Installing GDB
A Sample Debugging Session
Starting GDB
Using GDB Commands
Index