C in a Nutshell

by
Format: Paperback
Pub. Date: 2005-12-01
Publisher(s): Oreilly & Associates Inc
List Price: $39.95

Rent Book

Select for Price
There was a problem. Please try again later.

Digital

Rent Digital Options
Online:1825 Days access
Downloadable:Lifetime Access
$38.39
*To support the delivery of the digital material to you, a non-refundable digital delivery fee of $3.99 will be charged on each digital item.
$38.39*

New Book

We're Sorry
Sold Out

Used Book

We're Sorry
Sold Out

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Summary

Covering the C programming language and C runtime library, this book is destined to be a constant companion in your work. C in a Nutshell covers virtually everything you need to program in C. Topics include runtime library calls, common compiler options, and questions of C syntax and usage. Not to be missed by C programmers of all levels.

Author Biography

Peter is a seminar leader and key course developer, teaching courses to thousands of software developers for Unix and Windows systems. As the chief developer and cofounder of the IT company Authensis AG in Germany, he has gained extensive experience in software development for computer telephony. Peter is also the author of several other books on software development in C/C++, most of them as co-author with Ulla Kirch-Prinz, including O'Reilly's "C Pocket Reference".

Tony Crawford is a technical-writer and freelance translator with a strong C background based just outside Berlin, Germany. In addition to regular software localization projects, he has translated books on network administration and ATM. A US native, Tony completed undergraduate work at Occidental College, Los Angeles; Universit de Perpignan, France; and Technische Universit t, Berlin. Tony translates from German into English.

Table of Contents

Preface xi
Part I. Language
Language Basics
3(17)
Characteristics of C
3(1)
The Structure of C Programs
4(2)
Source Files
6(1)
Comments
7(1)
Character Sets
8(5)
Identifiers
13(3)
How the C Compiler Works
16(4)
Types
20(12)
Typology
20(1)
Integer Types
21(5)
Floating-Point Types
26(2)
Complex Floating-Point Types (C99)
28(1)
Enumerated Types
29(1)
The Type void
30(2)
Literals
32(8)
Integer Constants
32(1)
Floating-Point Constants
33(1)
Character Constants
34(3)
String Literals
37(3)
Type Conversions
40(15)
Conversion of Arithmetic Types
41(7)
Conversion of Nonarithmetic Types
48(7)
Expressions and Operators
55(28)
How Expressions Are Evaluated
56(3)
Operators in Detail
59(22)
Constant Expressions
81(2)
Statements
83(13)
Expression Statements
83(1)
Block Statements
84(1)
Loops
85(4)
Selection Statements
89(3)
Unconditional Jumps
92(4)
Functions
96(15)
Function Definitions
96(7)
Function Declarations
103(1)
How Functions Are Executed
104(1)
Pointers as Arguments and Return Values
104(2)
Inline Functions
106(1)
Recursive Functions
107(1)
Variable Numbers of Arguments
108(3)
Arrays
111(11)
Defining Arrays
111(2)
Accessing Array Elements
113(1)
Initializing Arrays
114(2)
Strings
116(1)
Multidimensional Arrays
117(3)
Arrays as Arguments of Functions
120(2)
Pointers
122(17)
Declaring Pointers
122(3)
Operations with Pointers
125(4)
Pointers and Type Qualifiers
129(3)
Pointers to Arrays and Arrays of Pointers
132(4)
Pointers to Functions
136(3)
Structures, Unions, and Bit-Fields
139(14)
Structures
139(10)
Unions
149(2)
Bit-Fields
151(2)
Declarations
153(14)
General Syntax
153(7)
Type Names
160(1)
typedef Declarations
161(2)
Linkage of Identifiers
163(1)
Storage Duration of Objects
164(1)
Initialization
165(2)
Dynamic Memory Management
167(15)
Allocating Memory Dynamically
168(1)
Characteristics of Allocated Memory
169(1)
Resizing and Releasing Memory
170(1)
An All-Purpose Binary Tree
171(1)
Characteristics
172(1)
Implementation
172(10)
Input and Output
182(27)
Streams
182(1)
Files
183(3)
Opening and Closing Files
186(2)
Reading and Writing
188(17)
Random File Access
205(4)
Preprocessing Directives
209(18)
Inserting the Contents of Header Files
210(1)
Defining and Using Macros
211(7)
Conditional Compiling
218(2)
Defining Line Numbers
220(1)
Generating Error Messages
221(1)
The #pragma Directive
221(1)
The_Pragma Operator
222(1)
Predefined Macros
223(4)
Part II. Standard Library
The Standard Headers
227(25)
Using the Standard Headers
227(3)
Contents of the Standard Headers
230(22)
Functions at a Glance
252(19)
Input and Output
252(1)
Mathematical Functions
253(7)
Character Classification and Conversion
260(2)
String Processing
262(1)
Multibyte Characters
263(1)
Converting Between Numbers and Strings
264(1)
Searching and Sorting
264(1)
Memory Block Handling
265(1)
Dynamic Memory Management
265(1)
Date and Time
266(1)
Process Control
267(1)
Internationalization
268(1)
Nonlocal Jumps
269(1)
Debugging
269(1)
Error Messages
270(1)
Standard Library Functions
271(220)
Part III. Basic Tools
Compiling with GCC
491(21)
The GNU Compiler Collection
491(1)
Obtaining and Installing GCC
492(1)
Compiling C Programs with GCC
493(8)
C Dialects
501(1)
Compiler Warnings
502(1)
Optimization
503(4)
Debugging
507(1)
Profiling
507(1)
Option and Environment Variable Summary
508(4)
Using make to Build C Programs
512(33)
Targets, Prerequisites, and Commands
512(1)
The Makefile
513(1)
Rules
513(7)
Comments
520(1)
Variables
520(7)
Phony Targets
527(1)
Other Target Attributes
528(1)
Macros
529(1)
Functions
530(4)
Directives
534(3)
Running make
537(8)
Debugging C Programs with GDB
545(32)
Installing GDB
546(1)
A Sample Debugging Session
546(4)
Starting GDB
550(4)
Using GDB Commands
554(23)
Index 577

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.