Home
C by Dennis Richhie
Image
Other ImageOther Image

C by Dennis Richhie

 
₹199
Product Description

Chapter 1 - A Tutorial Introduction.........................................................................................9 1.1 Getting Started..............................................................................................................9 1.2 Variables and Arithmetic Expressions..........................................................................11 1.3 The for statement.........................................................................................................15 1.4 Symbolic Constants......................................................................................................17 1.5 Character Input and Output.........................................................................................17 1.5.1 File Copying..........................................................................................................18 1.5.2 Character Counting...............................................................................................19 1.5.3 Line Counting.......................................................................................................20 1.5.4 Word Counting.....................................................................................................21 1.6 Arrays.........................................................................................................................23 1.7 Functions.....................................................................................................................25 1.8 Arguments - Call by Value...........................................................................................28 1.9 Character Arrays..........................................................................................................29 1.10 External Variables and Scope.....................................................................................31 Chapter 2 - Types, Operators and Expressions.......................................................................35 2.1 Variable Names............................................................................................................35 2.2 Data Types and Sizes...................................................................................................35 2.3 Constants.....................................................................................................................36 2.4 Declarations.................................................................................................................38 2.5 Arithmetic Operators...................................................................................................39 2.6 Relational and Logical Operators.................................................................................39 2.7 Type Conversions........................................................................................................40 2.8 Increment and Decrement Operators............................................................................43 2.9 Bitwise Operators........................................................................................................45 2.10 Assignment Operators and Expressions......................................................................46 2.11 Conditional Expressions.............................................................................................47 2.12 Precedence and Order of Evaluation..........................................................................48 Chapter 3 - Control Flow.......................................................................................................50 3.1 Statements and Blocks.................................................................................................50 3.2 If-Else..........................................................................................................................50 3.3 Else-If..........................................................................................................................51 3.4 Switch.........................................................................................................................52 3.5 Loops - While and For.................................................................................................53 3.6 Loops - Do-While........................................................................................................56 3.7 Break and Continue.....................................................................................................57 3.8 Goto and labels............................................................................................................57 Chapter 4 - Functions and Program Structure........................................................................59 4.1 Basics of Functions......................................................................................................59 4.2 Functions Returning Non-integers................................................................................61 4.3 External Variables........................................................................................................63 4.4 Scope Rules.................................................................................................................68 4.5 Header Files.................................................................................................................69 4.6 Static Variables............................................................................................................70 4.7 Register Variables........................................................................................................71 4.8 Block Structure............................................................................................................71 4.9 Initialization.................................................................................................................72 4.10 Recursion...................................................................................................................73 4.11 The C Preprocessor....................................................................................................74 4.11.1 File Inclusion.......................................................................................................75 4.11.2 Macro Substitution..............................................................................................75 3 4.11.3 Conditional Inclusion..........................................................................................77 Chapter 5 - Pointers and Arrays.............................................................................................78 5.1 Pointers and Addresses................................................................................................78 5.2 Pointers and Function Arguments.................................................................................79 5.3 Pointers and Arrays......................................................................................................81 5.4 Address Arithmetic......................................................................................................84 5.5 Character Pointers and Functions.................................................................................87 5.6 Pointer Arrays; Pointers to Pointers.............................................................................89 5.7 Multi-dimensional Arrays.............................................................................................92 5.8 Initialization of Pointer Arrays.....................................................................................93 5.9 Pointers vs. Multi-dimensional Arrays..........................................................................94 5.10 Command-line Arguments..........................................................................................95 5.11 Pointers to Functions.................................................................................................98 5.12 Complicated Declarations.........................................................................................100 Chapter 6 - Structures..........................................................................................................105 6.1 Basics of Structures...................................................................................................105 6.2 Structures and Functions............................................................................................107 6.3 Arrays of Structures...................................................................................................109 6.4 Pointers to Structures.................................................................................................112 6.5 Self-referential Structures...........................................................................................113 6.6 Table Lookup............................................................................................................117 6.7 Typedef......................................................................................................................119 6.8 Unions.......................................................................................................................120 6.9 Bit-fields....................................................................................................................121 Chapter 7 - Input and Output...............................................................................................124 7.1 Standard Input and Output.........................................................................................124 7.2 Formatted Output - printf...........................................................................................125 7.3 Variable-length Argument Lists..................................................................................127 7.4 Formatted Input - Scanf.............................................................................................128 7.5 File Access.................................................................................................................130 7.6 Error Handling - Stderr and Exit................................................................................132 7.7 Line Input and Output................................................................................................134 7.8 Miscellaneous Functions............................................................................................135 7.8.1 String Operations................................................................................................135 7.8.2 Character Class Testing and Conversion..............................................................135 7.8.3 Ungetc................................................................................................................135 7.8.4 Command Execution...........................................................................................135 7.8.5 Storage Management..........................................................................................136 7.8.6 Mathematical Functions.......................................................................................136 7.8.7 Random Number generation................................................................................136 Chapter 8 - The UNIX System Interface..............................................................................138 8.1 File Descriptors..........................................................................................................138 8.2 Low Level I/O - Read and Write................................................................................139 8.3 Open, Creat, Close, Unlink........................................................................................140 8.4 Random Access - Lseek.............................................................................................142 8.5 Example - An implementation of Fopen and Getc.......................................................142 8.6 Example - Listing Directories.....................................................................................145 8.7 Example - A Storage Allocator..................................................................................149 Appendix A - Reference Manual..........................................................................................154 A.1 Introduction..............................................................................................................154 A.2 Lexical Conventions..................................................................................................154 A.2.1 Tokens...............................................................................................................154 A.2.2 Comments..........................................................................................................154 4 A.2.3 Identifiers...........................................................................................................154 A.2.4 Keywords...........................................................................................................154 A.2.5 Constants...........................................................................................................155 A.2.6 String Literals.....................................................................................................156 A.3 Syntax Notation........................................................................................................156 A.4 Meaning of Identifiers...............................................................................................157 A.4.1 Storage Class.....................................................................................................157 A.4.2 Basic Types........................................................................................................157 A.4.3 Derived types.....................................................................................................158 A.4.4 Type Qualifiers...................................................................................................158 A.5 Objects and Lvalues..................................................................................................158 A.6 Conversions..............................................................................................................159 A.6.1 Integral Promotion.............................................................................................159 A.6.2 Integral Conversions...........................................................................................159 A.6.3 Integer and Floating...........................................................................................159 A.6.4 Floating Types....................................................................................................159 A.6.5 Arithmetic Conversions......................................................................................159 A.6.6 Pointers and Integers..........................................................................................160 A.6.7 Void...................................................................................................................160 A.6.8 Pointers to Void.................................................................................................161 A.7 Expressions...............................................................................................................161 A.7.1 Pointer Conversion.............................................................................................161 A.7.2 Primary Expressions...........................................................................................161 A.7.3 Postfix Expressions............................................................................................162 A.7.4 Unary Operators.................................................................................................164 A.7.5 Casts..................................................................................................................165 A.7.6 Multiplicative Operators.....................................................................................165 A.7.7 Additive Operators.............................................................................................166 A.7.8 Shift Operators...................................................................................................166 A.7.9 Relational Operators...........................................................................................167 A.7.10 Equality Operators...........................................................................................167 A.7.11 Bitwise AND Operator.....................................................................................167 A.7.12 Bitwise Exclusive OR Operator........................................................................167 A.7.13 Bitwise Inclusive OR Operator.........................................................................168 A.7.14 Logical AND Operator.....................................................................................168 A.7.15 Logical OR Operator........................................................................................168 A.7.16 Conditional Operator........................................................................................168 A.7.17 Assignment Expressions...................................................................................169 A.7.18 Comma Operator..............................................................................................169 A.7.19 Constant Expressions.......................................................................................169 A.8 Declarations..............................................................................................................170 A.8.1 Storage Class Specifiers.....................................................................................170 A.8.2 Type Specifiers...................................................................................................171 A.8.3 Structure and Union Declarations.......................................................................172 A.8.4 Enumerations.....................................................................................................174 A.8.5 Declarators.........................................................................................................175 A.8.6 Meaning of Declarators......................................................................................176 A.8.7 Initialization.......................................................................................................178 A.8.8 Type names........................................................................................................180 A.8.9 Typedef..............................................................................................................181 A.8.10 Type Equivalence.............................................................................................181 A.9 Statements................................................................................................................181 A.9.1 Labeled Statements.............................................................................................182 5 A.9.2 Expression Statement.........................................................................................182 A.9.3 Compound Statement.........................................................................................182 A.9.4 Selection Statements..........................................................................................183 A.9.5 Iteration Statements...........................................................................................183 A.9.6 Jump statements.................................................................................................184 A.10 External Declarations..............................................................................................184 A.10.1 Function Definitions.........................................................................................185 A.10.2 External Declarations.......................................................................................186 A.11 Scope and Linkage..................................................................................................186 A.11.1 Lexical Scope...................................................................................................187 A.11.2 Linkage............................................................................................................187 A.12 Preprocessing..........................................................................................................187 A.12.1 Trigraph Sequences..........................................................................................188 A.12.2 Line Splicing....................................................................................................188 A.12.3 Macro Definition and Expansion.......................................................................188 A.12.4 File Inclusion....................................................................................................190 A.12.5 Conditional Compilation...................................................................................191 A.12.6 Line Control.....................................................................................................192 A.12.7 Error Generation..............................................................................................192 A.12.8 Pragmas............................................................................................................192 A.12.9 Null directive....................................................................................................192 A.12.10 Predefined names............................................................................................192 A.13 Grammar.................................................................................................................193 Appendix B - Standard Library............................................................................................199 B.1 Input and Output: ......................................................................................199 B.1.1 File Operations...................................................................................................199 B.1.2 Formatted Output...............................................................................................200 B.1.3 Formatted Input..................................................................................................202 B.1.4 Character Input and Output Functions................................................................203 B.1.5 Direct Input and Output Functions......................................................................204 B.1.6 File Positioning Functions...................................................................................204 B.1.7 Error Functions..................................................................................................205 B.2 Character Class Tests: ...............................................................................205 B.3 String Functions: ......................................................................................205 B.4 Mathematical Functions: ............................................................................206 B.5 Utility Functions: ......................................................................................207 B.6 Diagnostics: ..............................................................................................209 B.7 Variable Argument Lists: .........................................................................209 B.8 Non-local Jumps: ....................................................................................210 B.9 Signals: ....................................................................................................210 B.10 Date and Time Functions: .........................................................................210 B.11 Implementation-defined Limits: and .........................................212 Appendix C - Summary of Changes.....................................................................................214

Share

Secure Payments

Shipping in India

Great Value & Quality
Payment types
Create your own online store for free.
Sign Up Now