POINTERS DECLARATION

Duration: 4 min

This video lesson is available to enrolled students.

Return to /learn/BTSC-LAB-ASSISTANT/programming-fundamentals/arrays-pointers/pointer-basics-declaration-initialization-and-dereferencing/asset-pointers-declaration after enrolling

Inside: a video lesson and guided study material.

Module outline

  1. About Course: BTSC About Course
  2. Basics of Computer Science: Basics of COA, Number System, Number Representation
  3. Operating System: Introduction to OS, Process Management, CPU Scheduling, Process Synchronization, Threads & Process Creation, Deadlock, Memory Management, Virtual Memory
  4. Data Structures & Algorithms: Introduction to DS, Array, Stack, Queue, Linked List, Tree, Graphs, Hashing, Algorithm Analysis, Time Complexity Analysis, Sorting Algorithms
  5. Database Management Systems(DBMS): Basics of DBMS, ER Diagram, Relational Model & Functional Dependencies, Keys & Integrity Constraints, Normalization (1NF - BCNF), Relational Algebra, SQL, Transaction Management, Concurrency Control, Database Recovery
  6. Networking and Internet: Introduction to CN, Data Communication, Net Layer: IPv4 & Proto, Net Layer: IP Addressing, Application Layer, Hardware Basics, Network Access Technologies, Network Security
  7. Cyber Security Basics: Cyber Threats and Malware Attacks, Role of Internet and Web Services, Electronic Data Interchange and E-Commerce, Cyber Safety and Security
  8. C Programming (Programming Fundamentals): C Fundamentals, Control Flow, Functions, Arrays & Pointers, Storage Classes, Structures & Enums, DMA, Macros, Scoping & File Handling
  9. C++, OOPs & Java (Programming Fundamentals): Java, OOPS with C++
  10. Python (Programming Fundamentals): Introduction to Python, Tokens, Variables, Data Types, I/O, Operators & Expressions, Control Flow & Looping, Collections & Strings, Functions & Modules
  11. Web Development Basics: Internet Fundamentals, Web Design & Development, Protocols & Services, Web Publishing & Hosting, Server Side & Security, Emerging Technologies, JavaScript-Basics, HTML Basics
  12. Software Engineering: Fundamentals of Software Engineering, Software Requirements and Quality Assurance, Software Design, Estimation and Metrics, Software Testing
  13. Software and Hardware Tools: MS Office Applications, Unix OS, Linux OS
  14. Emerging Trends. AI & Social Ethics: Artificial Intelligence, Emerging Tech Trends, Society, Law & Ethics
  15. Full Mock Test:
AI summary & chapters

AI Summary

An AI-generated summary of this video lecture.

The lecture provides a detailed explanation of C pointer declarations and the advanced concept of pointers to pointers. It starts by defining pointers as variables capable of holding memory addresses, emphasizing that since addresses are whole numbers, pointers always contain whole numbers. The instructor clarifies common misconceptions, such as `float *s` storing an address of a float rather than a float value itself. The lesson then extends this concept to show that a variable can be a pointer to another pointer. Using the code `int i = 3, *j, **k;`, the instructor demonstrates how `j` holds the address of `i` and `k` holds the address of `j`. He begins analyzing the code's output, marking specific `printf` statements to distinguish between printing addresses and values.

Chapters

  1. 0:00 – 2:00 00:00-02:00

    The instructor introduces pointer declarations like `int *alpha`, `char *ch`, and `float *s`, explaining they hold addresses. He notes that addresses are always whole numbers. He then introduces a code snippet `int i = 3, *j, **k;` to demonstrate pointers to pointers. He explains the initialization `j = &i` and `k = &j`. He starts annotating the `printf` statements on the screen, marking the first few with an 'x' to indicate they print addresses. He writes on the board that `i` holds 3, `j` holds an address (e.g., 65524), and `k` holds an address (e.g., 65522).

  2. 2:00 – 3:38 02:00-03:38

    The instructor displays the program output and draws a memory diagram. The diagram shows `i` containing 3 at address 65524, `j` containing 65524 at address 65522, and `k` containing 65522 at address 65520. He explains the chain of pointers: `k` points to `j`, which points to `i`. He goes through the remaining `printf` statements, marking them with 'y' to show they print values. He explains that `*j` and `**k` both dereference to the value 3. The segment concludes with a slide titled 'Back to Function Calls', indicating a shift in topic.

The lesson progresses from fundamental pointer definitions to the more complex concept of pointers to pointers. By using a concrete code example with `i`, `j`, and `k`, the instructor visually demonstrates memory allocation and dereferencing. The transition from explaining declarations to analyzing specific `printf` outputs and memory diagrams solidifies the understanding of how pointers chain together to access values indirectly. This sets the stage for understanding function calls by reference.

Loading lesson…