当前位置:首页 > 工业技术
PROGRAMMING IN C  THIRD EDITION
PROGRAMMING IN C  THIRD EDITION

PROGRAMMING IN C THIRD EDITIONPDF电子书下载

工业技术

  • 电子书积分:17 积分如何计算积分?
  • 作 者:(美)科汉著
  • 出 版 社:人民邮电出版社
  • 出版年份:2006
  • ISBN:7115147639
  • 页数:564 页
图书介绍:本书为C语言程序设计英文版教材。
《PROGRAMMING IN C THIRD EDITION》目录
标签:

Contents At a Glance 1

1 Introduction 1

2 Some Fundamentals 5

3 Compiling and RunningYour First Program 11

4 Variables, Data Types, and Arithmetic Expressions 21

5 Program Looping 43

6 Making Decisions 65

7 Working with Arrays 95

8 Working with Functions 119

9 Working with Structures 165

10 Character Strings 195

11 Pointers 235

12 Operations on Bits 279

13 The Preprocessor 299

14 More on Data Types 321

15 Working with Larger Programs 333

16 Input and Output Operations in C 347

17 Miscellaneous and Advanced Features 373

18 Debugging Programs 389

19 Object-Oriented Programming 411

A C Language Summary 425

B The Standard C Library 467

C Compiling Programs with gcc 493

D Common Programming Mistakes 497

E Resources 501

Index 505

Table of Contents 1

1 Introduction 1

2 Some Fundamentals 5

Programming 5

Higher-Level Languages 6

Operating Systems 6

Compiling Programs 7

Integrated Development Environments 10

Language Interpreters 10

3 Compiling and Running Your First Program 11

CompilingYour Program 11

RunningYour Program 12

UnderstandingYour First Program 13

Displaying the Values of Variables 15

Comments 17

Exercises 19

4 Variables, Data Types, and ArithmeticExpressions 21

Working with Variables 21

Understanding Data Types and Constants 23

The Basic Integer Type int 23

The Floating NumberType float 24

The Extended Precision Type double 25

The Single Character Type char 25

The Boolean Data Type_Bool 26

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

Working with Arithmetic Expressions 30

Integer Arithmetic and the Unary Minus Operator 33

The Modulus Operator 35

Integer and Floating-Point Conversions 36

Combining Operations with Assignment: The Assignment Operators 38

Types_Complex and_Imaginary 39

Exercises 40

5 Program Looping 43

The for Statement 44

Relational Operators 46

Aligning Output 50

Program Input 51

Nested for Loops 53

for Loop Variants 54

The while Statement 56

The do Statement 60

The break Statement 62

The continue Statement 62

Exercises 63

6 Making Decisions 65

The if Statement 65

The if-else Construct 69

Compound Relational Tests 72

Nested if Statements 75

The else if Construct 76

The switch Statement 84

Boolean Variables 87

The Conditional Operator 91

Exercises 93

7 Working with Arrays 95

Defining an Array 96

Using Array Elements as Counters 100

Generating Fibonacci Numbers 103

Using an Array to Generate Prime Numbers 104

Initializing Arrays 106

Character Arrays 108

Base Conversion Using Arrays 109

The const Qualifier 111

Multidimensional Arrays 113

Variable-Length Arrays 115

Exercises 117

8 Working with Functions 119

Defining a Function 119

Arguments and LocalVariables 122

Function Prototype Declaration 124

Automatic LocalVariables 124

Returning Function Results 126

Functions Calling Functions Calling... 131

Declaring Return Types and Argument Types 134

Checking Function Arguments 135

Top-Down Programming 137

Functions and Arrays 137

Assignment Operators 142

Sorting Arrays 143

Multidimensional Arrays 146

GlobalVariables 152

Automatic and Static Variables 156

Recursive Functions 159

Exercises 162

9 Working with Structures 165

A Structure for Storing the Date 166

Using Structures in Expressions 168

Functions and Structures 171

A Structure for Storing theTime 177

Initializing Structures 180

Compound Literals 181

Arrays of Structures 182

Structures Containing Structures 185

Structures Containing Arrays 187

Structure Variants 190

Exercises 191

10 Character Strings 195

Arrays of Characters 196

Variable-Length Character Strings 198

Initializing and Displaying Character Strings 201

TestingTwo Character Strings for Equality 204

Inputting Character Strings 206

Single-Character Input 208

The Null String 213

Escape Characters 216

More on Constant Strings 218

Character Strings, Structures, and Arrays 219

A Better Search Method 222

Character Operations 227

Exercises 230

11 Pointers 235

Defining a PointerVariable 235

Using Pointers in Expressions 239

Working with Pointers and Structures 240

Structures Containing Pointers 243

Linked Lists 244

The Keyword const and Pointers 253

Pointers and Functions 254

Pointers and Arrays 259

A Slight Digression About Program Optimization 263

Is It an Array or Is It a Pointer? 264

Pointers to Character Strings 266

Constant Character Strings and Pointers 267

The Increment and Decrement Operators Revisited 268

Operations on Pointers 272

Pointers to Functions 273

Pointers and Memory Addresses 274

Exercises 276

12 Operations on Bits 279

Bit Operators 280

The Bitwise AND Operator 281

The Bitwise Inclusive-OR Operator 283

The Bitwise Exclusive-OR Operator 284

The Ones Complement Operator 285

The Left Shift Operator 287

The Right Shift Operator 287

A Shift Function 288

Rotating Bits 290

Bit Fields 292

Exercises 297

13 The Preprocessor 299

The #define Statement 299

Program Extendability 303

Program Portability 305

More Advanced Types of Definitions 306

The # Operator 312

The ## Operator 313

The #include Statement 313

System Include Files 316

Conditional Compilation 316

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

The #if and #elif Preprocessor Statements 318

The #undef Statement 319

Exercises 320

14 More on Data Types 321

Enumerated Data Types 321

The typedef Statement 325

Data Type Conversions 327

Sign Extension 329

Argument Conversion 329

Exercises 330

15 Working with Larger Programs 333

DividingYour Program into Multiple Files 333

Compiling Multiple Source Files from the Command Line 334

Communication Between Modules 336

External Variables 336

Static Versus Extern Variables and Functions 339

Using Header Files Effectively 341

Other Utilities for Working with Larger Programs 342

The make Utility 343

The cvs Utility 344

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

16 Input and Output Operations in C 347

Character I/O: getchar and putchar 348

Formatted I/O: printf and scanf 348

The printf Function 348

The scanf Function 355

Input and Output Operations with Files 359

Redirecting I/O to a File 359

End of File 361

Special Functions for Working with Files 363

The fopen Function 363

The getc and putc Functions 365

The fclose Function 365

The feof Function 367

The fprintf and fscanf Functions 368

The fgets and fputs Functions 368

stdin, stdout, and stderr 369

The exit Function 370

Renaming and Removing Files 371

Exercises 371

17 Miscellaneous and Advanced Features 373

Miscellaneous Language Statements 373

The goto Statement 373

The null Statement 374

Working with Unions 375

The Comma Operator 378

Type Qualifiers 378

The register Qualifier 378

The volatile Qualifier 379

The restrict Qualifier 379

Command-Line Arguments 380

Dynamic Memory Allocation 383

The calloc and malloc Functions 384

The sizeof Operator 385

The free Function 387

18 Debugging Programs 389

Debugging with the Preprocessor 389

Debugging Programs with gdb 395

Working with Variables 398

Source File Display 399

Controlling Program Execution 400

Getting a Stack Trace 405

Calling Functions and Setting Arrays and Structures 405

Getting Help with gdb Commands 406

Odds and Ends 408

19 Object-Oriented Programming 411

What Is an Object Anyway? 411

Instances and Methods 412

Writing a C Program toWork with Fractions 413

Defining an Objective-C Class to Work with Fractions 414

Defining a C++ Class toWork with Fractions 419

Defining a C# Class to Work with Fractions 422

A C Language Summary 425

1.0 Digraphs and Identifiers 425

1.1 Digraph Characters 425

1.2 Identifiers 425

2.0 Comments 426

3.0 Constants 427

3.1 Integer Constants 427

3.2 Floating-Point Constants 427

3.3 Character Constants 428

3.4 Character String Constants 429

3.5 Enumeration Constants 430

4.0 Data Types and Declarations 430

4.1 Declarations 430

4.2 Basic Data Types 430

4.3 Derived DataTypes 432

4.4 Enumerated Data Types 438

4.5 The typedef Statement 438

4.6 Type Modifiers const, volatile, and restrict 439

5.0 Expressions 439

5. 1 Summary of C Operators 440

5.2 Constant Expressions 442

5.3 Arithmetic Operators 443

5.4 Logical Operators 444

5.5 Relational Operators 444

5.6 Bitwise Operators 445

5.7 Increment and Decrement Operators 445

5.8 Assignment Operators 446

5.9 Conditional Operators 446

5.10 Type Cast Operator 446

5.11 sizeof Operator 447

5.12 Comma Operator 447

5.13 Basic Operations with Arrays 447

5.14 Basic Operations with Structures 448

5.15 Basic Operations with Pointers 448

5.16 Compound Literals 450

5.17 Conversion of Basic Data Types 451

6.0 Storage Classes and Scope 452

6.1 Functions 452

6.2 Variables 452

7.0 Functions 454

7.1 Function Definition 454

7.2 Function Call 455

7.3 Function Pointers 456

8.0 Statements 456

8.1 Compound Statements 456

8.2 The break Statement 456

8.3 The continue Statement 457

8.4 The do Statement 457

8.5 The for Statement 457

8.6The goto Statement 458

8.7 The if Statement 458

8.8 The null Statement 458

8.9 The return Statement 459

8.10The switch Statement 459

8.11 The while Statement 460

9.0 The Preprocessor 460

9.1 Trigraph Sequences 460

9.2 Preprocessor Directives 461

9.3 Predefined Identifiers 466

B The Standard C Library 467

Standard Header Files 467

<stddef. h> 467

<limits.h> 468

<stdbool. h> 469

<float.h> 469

<stdint .h> 469

String Functions 470

Memory Functions 472

Character Functions 473

I/O Functions 473

In-Memory Format Conversion Functions 478

String-to-Number Conversion 479

Dynamic Memory Allocation Functions 481

Math Functions 482

Complex Arithmetic 488

General Utility Functions 490

C Compiling Programs with gcc 493

General Command Format 493

Command-Line Options 494

D Common Programming Mistakes 497

E Resources 501

Answers to Exercises, Errata, etc 501

The C Programming Language 501

Books 501

Web Sites 502

Newsgroups 502

C Compilers and Integrated Development Environments 502

gcc 502

MinGW 502

CygWin 502

Visual Studio 503

CodeWarrior 503

Kylix 503

Miscellaneous 503

Object-Oriented Programming 503

The C+++ Language 503

The C# Language 503

The Objective-C Language 503

Development Tools 504

Index 505

返回顶部