C語言程式設計(第4版)英文版

C語言程式設計(第4版)英文版

《C語言程式設計(第4版)英文版》是2016年4月電子工業出版社出版的圖書,作者是【美】Stephen G. Kochan(史蒂芬·G·寇肯) 。

內容簡介

《C語言程式設計(第4版)英文版》全面介紹了C語言的各種特性,包括C11中增加的內容。《C語言程式設計(第4版)英文版》中包含大量完整的示例及詳細的講解。附錄中詳盡總結了C語言和C語言庫,兩者的組織形式都便於快速參考。

《C語言程式設計(第4版)英文版》通過示例來教授C語言,每個新概念都有完整的C程式做演示。你不僅可以學習這門語言的基礎知識,還能養成良好的程式設計習慣。另外,每章最後附有習題,便於課堂學習或自學。

無論是否擁有編程經驗,你都可以通過本書透徹地理解C語言。

編輯推薦

本書將向你講解如何使用C程式設計語言來編寫程式。無論是剛入門的初級程式設計師,還是經驗豐富的資深程式設計師,都可以在本書的幫助下徹底理解這門語言,它是許多面向對象程式設計語言(比如C++、Objective-C、C#和Java)的基礎。

本書通過示例來教授C語言,每個新概念都有完整的C程式做演示。Stephen Kochan逐步解釋了所有C函式。你不僅可以學習這門語言的基礎知識,還能養成良好的程式設計習慣。每章最後的習題使本書非常適於課堂學習或自學。

本書涵蓋了C語言的所有特性,包括C11標準中新增的內容。附錄中詳盡總結了C語言和C語言庫,兩者的組織形式都便於快速參考。

內容提要

《C語言程式設計(第4版)英文版》全面介紹了C語言的各種特性,包括C11中增加的內容。《C語言程式設計(第4版)英文版》中包含大量完整的示例及詳細的講解。附錄中詳盡總結了C語言和C語言庫,兩者的組織形式都便於快速參考。

《C語言程式設計(第4版)英文版》通過示例來教授C語言,每個新概念都有完整的C程式做演示。你不僅可以學習這門語言的基礎知識,還能養成良好的程式設計習慣。另外,每章最後附有習題,便於課堂學習或自學。

無論是否擁有編程經驗,你都可以通過本書透徹地理解C語言。

目錄

Introduction

1 Some Fundamentals

Programming

Higher-Level Languages

Operating Systems

Compiling Programs

Integrated Development Environments

Language Interpreters

2 Compiling and Running Your First Program

Compiling Your Program

Running Your Program

Understanding Your First Program

Displaying the Values of Variables

Comments

Exercises

3 Variables, Data Types, and Arithmetic Expressions

Understanding Data Types and Constants

The Integer Type int

The Floating Number Type float

The Extended Precision Type double

The Single Character Type char

The Boolean Data Type _Bool

Type Specifiers: long , long long , short , unsigned , and signed

Working with Variables

Working with Arithmetic Expressions

Integer Arithmetic and the Unary Minus Operator

Combining Operations with Assignment: The Assignment Operators

Types _Complex and _Imaginary

Exercises

4 Program Looping

Triangular Numbers

The for Statement

Relational Operators

Aligning Output

Program Input

Nested for Loops

for Loop Variants

The while Statement

The do Statement

The break Statement

The continue Statement

Exercises

5 Making Decisions

The if Statement

The if-else Construct

Compound Relational Tests

Nested if Statements

The else if Construct

The switch Statement

Boolean Variables

The Conditional Operator

Exercises

6 Working with Arrays

Defining an Array

Using Array Elements as Counters

Generating Fibonacci Numbers

Using an Array to Generate Prime Numbers

Initializing Arrays

Character Arrays

Base Conversion Using Arrays

The const Qualifier

Multidimensional Arrays

Variable Length Arrays

Exercises

7 Working with Functions

Defining a Function

Arguments and Local Variables

Function Prototype Declaration

Automatic Local Variables

Returning Function Results

Functions Calling Functions Calling...

Declaring Return Types and Argument Types

Checking Function Arguments

Top-Down Programming

Functions and Arrays

Assignment Operators

Sorting Arrays

Multidimensional Arrays

Global Variables

Automatic and Static Variables

Recursive Functions

Exercises

8 Working with Structures

The Basics of Structures

A Structure for Storing the Date

Using Structures in Expressions

Functions and Structures

A Structure for Storing the Time

Initializing Structures

Compound Literals

Arrays of Structures

Structures Containing Structures

Structures Containing Arrays

Structure Variants

Exercises

9 Character Strings

Revisiting the Basics of Strings

Arrays of Characters

Variable-Length Character Strings

Initializing and Displaying Character Strings

Testing Two Character Strings for Equality

Inputting Character Strings

Single-Character Input

The Null String

Escape Characters

More on Constant Strings

Character Strings, Structures, and Arrays

A Better Search Method

Character Operations

Exercises

10 Pointers

Pointers and Indirection

Defining a Pointer Variable

Using Pointers in Expressions

Working with Pointers and Structures

Structures Containing Pointers

Linked Lists

The Keyword const and Pointers

Pointers and Functions

Pointers and Arrays

A Slight Digression About Program Optimization

Is It an Array or Is It a Pointer?

Pointers to Character Strings

Constant Character Strings and Pointers

The Increment and Decrement Operators Revisited

Operations on Pointers

Pointers to Functions

Pointers and Memory Addresses

Exercises

11 Operations on Bits

The Basics of Bits

Bit Operators

The Bitwise AND Operator

The Bitwise Inclusive-OR Operator

The Bitwise Exclusive-OR Operator

The Ones Complement Operator

The Left Shift Operator

The Right Shift Operator

A Shift Function

Rotating Bits

Bit Fields

Exercises

12 The Preprocessor

The #define Statement

Program Extendability

Program Portability

More Advanced Types of Definitions

The # Operator

The ## Operator

The #include Statement

System Include Files

Conditional Compilation

The #ifdef, #endif, #else, and #ifndef Statements

The #if and #elif Preprocessor Statements

The #undef Statement

Exercises

13 Extending Data Types with the Enumerated Data Type, Type Definitions, and Data Type Conversions

Enumerated Data Types

The typedef Statement

Data Type Conversions

Sign Extension

Argument Conversion

Exercises

14 Working with Larger Programs

Dividing Your Program into Multiple Files

Compiling Multiple Source Files from the Command Line

Communication Between Modules

External Variables

Static Versus Extern Variables and Functions

Using Header Files Effectively

Other Utilities for Working with Larger Programs

The make Utility

The cvs Utility

Unix Utilities: ar, grep, sed, and so on

15 Input and Output Operations in C

Character I/O: getchar() and putchar()

Formatted I/O: printf() and scanf()

The printf() Function

The scanf() Function

Input and Output Operations with Files

Redirecting I/O to a File

End of File

Special Functions for Working with Files

The fopen Function

The getc() and putc() Functions

The fclose() Function

The feof Function

The fprintf() and fscanf() Functions

The fgets() and fputs() Functions

stdin, stdout, and stderr

The exit() Function

Renaming and Removing Files

Exercises

16 Miscellaneous and Advanced Features

Miscellaneous Language Statements

The goto Statement

The null Statement

Working with Unions

The Comma Operator

Type Qualifiers

The register Qualifier

The volatile Qualifier

The restrict Qualifier

Command-line Arguments

Dynamic Memory Allocation

The calloc() and malloc() Functions

The sizeof Operator

The free Function

Exercises

17 Debugging Programs

Debugging with the Preprocessor

Debugging Programs with gdb

Working with Variables

Source File Display

Controlling Program Execution

Getting a Stack Trace

Calling Functions and Setting Arrays and Structures

Getting Help with gdb Commands

Odds and Ends

18 Object-Oriented Programming

What Is an Object Anyway?

Instances and Methods

Writing a C Program to Work with Fractions

Defining an Objective-C Class to Work with Fractions

Defining a C++ Class to Work with Fractions

Defining a C# Class to Work with Fractions

A C Language Summary

1.0 Digraphs and Identifiers

2.0 Comments

3.0 Constants

4.0 Data Types and Declarations

5.0 Expressions

6.0 Storage Classes and Scope

7.0 Functions

8.0 Statements

9.0 The Preprocessor

B The Standard C Library

Standard Header Files

String Functions

Memory Functions

Character Functions

I/O Functions

In-Memory Format Conversion Functions

String-to-Number Conversion

Dynamic Memory Allocation Functions

Math Functions

General Utility Functions

C Compiling Programs with gcc

General Command Format

Command-Line Options

D Common Programming Mistakes

E Resources

The C Programming Language

C Compilers and Integrated Development Environments

Miscellaneous

Index

作者簡介

Stephen G. Kochan撰寫及合作撰寫了六本經典的程式設計與Unix書籍,包括 Unix Shell Programming和 Programming in Objective-C。他曾任AT&T貝爾實驗室的軟體顧問,從事Unix和C程式設計的開發與授課工作。

媒體評論

對於任何開始學習使用C語言編寫程式的人來說,這本書都是極好的。這是一本優秀的入門教科書,擁有豐富的示例、出色的文字……我就是用這本書來學習C語言的——這是一本超棒的書。

——Vinit S. Carpenter,Learn C/C++ Today

相關詞條

熱門詞條

聯絡我們