Programming in C : a practical approach /
This book has a perfect blend of theory as well as practicals and it has been presented in a manner that helps the readers to learn the concepts through practice and programming.
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
New Delhi, India :
Dorling Kindersley (India),
©2010.
|
Temas: | |
Acceso en línea: | Texto completo (Requiere registro previo con correo institucional) |
Tabla de Contenidos:
- Cover
- Programming in C
- Copyright
- Contents
- About the Author
- Preface
- 1 Data Types, Variables and Constants
- 1.1 Introduction
- 1.2 C Standards
- 1.2.1 Kernighan & Ritchie (K&R) C Standard
- 1.2.2 ANSI C/Standard C/C89 Standard
- 1.2.3 ISO C/C90 Standard
- 1.2.4 C99 Standard
- 1.3 Learning Programming Language and Natural Language: An Analogy
- 1.4 C Character Set
- 1.5 Identifiers and Keywords
- 1.5.1 Identifiers
- 1.5.2 Keywords
- 1.6 Declaration Statement
- 1.7 Data Types
- 1.7.1 Basic/Primitive Data Types
- 1.7.2 Derived Data Types
- 1.7.3 User-defined Data Types
- 1.8 Type Qualifiers and Type Modifiers
- 1.8.1 Type Qualifiers
- 1.8.2 Type Modifiers
- 1.9 Difference Between Declaration and Definition
- 1.10 Data Object, L-value and R-value
- 1.10.1 Data Object
- 1.10.2 L-value
- 1.10.3 R-value
- 1.11 Variables and Constants
- 1.11.1 Variables
- 1.11.2 Constants
- 1.12 Structure of a C Program
- 1.12.1 Comments
- 1.12.2 Section1: Preprocessor Directive Section
- 1.12.3 Section 2: Global Declaration Section
- 1.12.4 Section 3: Functions Section
- 1.13 Executing a C Program
- 1.14 More Programs for Startup
- 1.15 Summary
- Exercise Questions
- Conceptual Questions and Answers
- Code Snippets
- Multiple-choice Questions
- Outputs and Explanations to Code Snippets
- Answers to Multiple-choice Questions
- Programming Exercises
- Test Yourself
- 2 Operators and Expressions
- 2.1 Introduction
- 2.2 Expressions
- 2.2.1 Operands
- 2.2.2 Operators
- 2.3 Simple Expressions and Compound Expressions
- 2.3.1 Precedence of Operators
- 2.3.2 Associativity of Operators
- 2.4 Classification of Operators
- 2.4.1 Classification Based on Number of Operands
- 2.4.2 Classification Based on Role of Operator
- 2.5 Combined Precedence of All Operators
- 2.6 Summary
- Exercise Questions.
- Conceptual Questions and Answers
- Code Snippets
- Multiple-choice Questions
- Outputs and Explanations to Code Snippets
- Answers to Multiple-choice Questions
- Programming Exercises
- Test Yourself
- 3 Statements
- 3.1 Introduction
- 3.2 Statements
- 3.3 Classification of Statements
- 3.3.1 Based Upon the Type of Action they Perform
- 3.3.2 Based Upon the Number of Constituent Statements
- 3.3.3 Based Upon their Role
- 3.4 Summary
- Exercise Questions
- Conceptual Questions and Answers
- Code Snippets
- Multiple-choice Questions
- Outputs and Explanations to Code Snippets
- Answers to Multiple-choice Questions
- Programming Exercises
- Test Yourself
- 4 Arrays and Pointers
- 4.1 Introduction
- 4.2 Arrays
- 4.3 Single-dimensional Arrays
- 4.3.1 Declaration of a Single-dimensional Array
- 4.3.2 Usage of Single-dimensional Array
- 4.3.3 Memory Representation of Single-dimensional Array
- 4.3.4 Operations on a Single-dimensional Array
- 4.4 Pointers
- 4.4.1 Operations on Pointers
- 4.4.2 void pointer
- 4.4.3 Null Pointer
- 4.5 Relationship Between Arrays and Pointers
- 4.6 Scaling up the Concept
- 4.6.1 Array of Arrays (Multi-dimensional Arrays)
- 4.6.2 Array of Pointers
- 4.6.3 Pointer to a Pointer
- 4.6.4 Pointer to an Array
- 4.7 Advantages and Limitations of Arrays
- 4.8 Summary
- Exercise Questions
- Conceptual Questions and Answers
- Code Snippets
- Multiple-choice Questions
- Outputs and Explanations to Code Snippets
- Answers to Multiple-choice Questions
- Programming Exercises
- Test Yourself
- 5 Functions
- 5.1 Introduction
- 5.2 Functions
- 5.3 Classification of Functions
- 5.3.1 Based Upon who Develops the Function
- 5.3.2 Based Upon the Number of Arguments a Function Accepts
- 5.4 Summary
- Exercise Questions
- Conceptual Questions and Answers
- Code Snippets.
- Multiple-choice Questions
- Outputs and Explanations to Code Snippets
- Answers to Multiple-choice Questions
- Programming Exercises
- Test Yourself
- 6 Strings and Character Arrays
- 6.1 Introduction
- 6.2 Strings
- 6.3 Character Arrays
- 6.4 Reading Strings from the Keyboard
- 6.5 Printing Strings on the Screen
- 6.6 Importance of Terminating Null Character
- 6.7 String Library Functions
- 6.7.1 strlen Function
- 6.7.2 strcpy Function
- 6.7.3 strcat Function
- 6.7.4 strcmp Function
- 6.7.5 strcmpi Function
- 6.7.6 strrev Function
- 6.7.7 strlwr Function
- 6.7.8 strupr Function
- 6.7.9 strset Function
- 6.7.10 strchr Function
- 6.7.11 strrchr Function
- 6.7.12 strstr Function
- 6.7.13 strncpy Function
- 6.7.14 strncat Function
- 6.7.15 strncmp Function
- 6.7.16 strncmpi Function
- 6.7.17 strnset Function
- 6.8 List of Strings
- 6.8.1 Array of strings
- 6.8.2 Array of Character Pointers
- 6.9 Command Line Arguments
- 6.10 Summary
- Exercise Questions
- Conceptual Questions and Answers
- Code Snippets
- Multiple-choice Questions
- Outputs and Explanations to Code Snippets
- Answers to Multiple-choice Questions
- Programming Exercises
- Test Yourself
- 7 Scope, Linkage, Lifetime and Storage Classes
- 7.1 Introduction
- 7.2 Scope
- 7.2.1 Determination of Scope of an Identifier
- 7.2.2 Termination of Scope of an Identifier
- 7.2.3 Same Scope
- 7.2.4 Visibility of an Identifier
- 7.3 Linkage
- 7.3.1 External linkage
- 7.3.2 Internal Linkage
- 7.3.3 No Linkage
- 7.4 Storage Duration/Lifetime of an Object
- 7.5 Storage Classes
- 7.5.1 The auto Storage Class
- 7.5.2 The register Storage Class
- 7.5.3 The static Storage Class
- 7.5.4 The extern Storage Class
- 7.5.5 The typedef Storage Class
- 7.6 Dynamic Memory Allocation
- 7.6.1 Memory Leak
- 7.7 Summary
- Exercise Questions.
- Conceptual Questions and Answers
- Code Snippets
- Multiple-choice Questions
- Outputs and Explanations to Code Snippets
- Answers to Multiple-choice Questions
- Programming Exercises
- Test Yourself
- 8 The C Preprocessor
- 8.1 Introduction
- 8.2 Translators
- 8.3 Phases of Translation
- 8.3.1 Trigraph Replacement
- 8.3.2 Line Splicing
- 8.3.3 Tokenization
- 8.3.4 Preprocessor Directive Handling
- 8.4 Summary
- Exercise Questions
- Conceptual Questions and Answers
- Code Snippets
- Multiple-choice Questions
- Outputs and Explanations to Code Snippets
- Answers to Multiple-choice Questions
- Programming Exercises
- Test Yourself
- 9 Structures, Unions, Enumerations and Bit-fields
- 9.1 Introduction
- 9.2 Structures
- 9.2.1 Defining a Structure
- 9.2.2 Declaring Structure Objects
- 9.2.3 Operations on Structures
- 9.3 Pointers to Structures
- 9.3.1 Declaring Pointer to a Structure
- 9.3.2 Accessing Structure Members Via a Pointer to a Structure
- 9.4 Array of Structures
- 9.5 Structures within a Structure (Nested Structures)
- 9.6 Functions and Structures
- 9.6.1 Passing Each Member of a Structure Object as a Separate Argument
- 9.6.2 Passing a Structure Object by Value
- 9.6.3 Passing a Structure Object by Address/Reference
- 9.7 typedef and Structures
- 9.8 Unions
- 9.9 Practical Application of Unions
- 9.9.1 Calling DOS and BIOS Functions
- 9.9.2 Interrupt Programming
- 9.10 Enumerations
- 9.11 Bit-Fields
- 9.12 Summary
- Exercise Questions
- Conceptual Questions and Answers
- Code Snippets
- Multiple-choice Questions
- Outputs and Explanations to Code Snippets
- Answers to Multiple-choice Questions
- Programming Exercises
- Test Yourself
- 10 Files
- 10.1 Introduction
- 10.2 Files
- 10.3 Streams
- 10.4 I/O Using Streams
- 10.4.1 Opening a Stream
- 10.4.2 Closing Streams.
- 10.4.3 Character Input
- 10.4.4 Character Output
- 10.4.5 File Position Indicator
- 10.4.6 End of File and Errors
- 10.4.7 Line Input
- 10.4.8 Line Output
- 10.4.9 Formatted Input
- 10.4.10 Formatted Output
- 10.4.11 Block Input
- 10.4.12 Block Output
- 10.4.13 Stream Buffering and Flushing the Streams
- 10.5 File Type
- 10.6 Files and Command Line Arguments
- 10.7 Summary
- Exercise Questions
- Conceptual Questions and Answers
- Code Snippets
- Multiple-choice Questions
- Outputs and Explanations to Code Snippets
- Answers to Multiple-choice Questions
- Programming Exercises
- Test Yourself
- Appendix A: Number Systems
- A.1 Number systems
- A.2 Number System Conversions
- A.2.1 Conversion from Decimal Number System to any Other Number System
- A.2.2 Conversion from Any Other Number System to Decimal Number System
- A.2.3 Conversion from Binary Number System to Octal and Hexadecimal Number System
- A.2.4 Conversion from Octal and Hexadecimal Number System to Binary Number System
- Appendix B: Algorithms and Flowcharts
- B.1 Algorithm
- B.2 Flowcharts
- Appendix C: Translation Limits
- Appendix D: ROM-BIOS and DOS Services
- Appendix E: Graphics Programming
- E.1 Computer Graphics
- E.2 Initializing Graphics Mode in Turbo C 3.0
- E.3 Drawing Basic Shapes
- E.3.1 Simple Line Drawing
- E.3.2 Stylish Line Drawing
- E.3.3 Drawing Other Basic Shapes
- E.4 Region Filling
- E.4.1 Filling Regions with Different Patterns and Colors
- E.5 Pattern Drawing Based on Regular Polygons
- E.5.1 Drawing Rosettes
- E.5.2 Swirling Polygons
- E.6 Motif and Tiling
- E.7 Viewport and Clipping
- Appendix F: Answers to Test Yourself Questions
- Index.