1 option
Programming in C : a practical approach / Ajay Mittal
- Format:
- Book
- Author/Creator:
- Mittal, Ajay.
- Language:
- English
- Subjects (All):
- C (Computer program language).
- Physical Description:
- 1 online resource (xvi, 747 p.) : ill.
- Edition:
- 1st edition
- Place of Publication:
- New Delhi, India : Dorling Kindersley (India), c2010.
- System Details:
- text file
- Summary:
- 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.
- Contents:
- 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
- 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
- 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
- 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
- Code Snippets.
- Multiple-choice Questions
- 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
- 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
- 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
- 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
- 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
- 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.
- Notes:
- Cover title.
- Includes index.
- Description based on publisher supplied metadata and other sources.
- ISBN:
- 9786612663130
- 9788131752692
- 8131752690
- 9781282663138
- 1282663135
- OCLC:
- 741566217
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.