C
  • Introduction
    • Fundamentals of a Program
    • Overview of C
    • Features of C
  • Installing Required Software
    • Setting Up VSCode for Windows
    • Setting Up VSCode for macOS
    • Setting Up VSCode for Ubuntu
  • Starting to write code
    • Compiling and Running Your Code
    • Creating Our First C Program
    • Errors and Warnings
    • Program: Writing a C Program to Display Your Name
    • Structure of a C Program
  • Basic Concepts
    • Comments in C
    • Preprocessor in C
    • The #include Statement
    • Displaying Output
    • Reading Input from the Terminal
    • Enums and Chars
    • Data Types and Variables
    • Format Specifiers
    • Command Line Arguments
    • Program: Calculating the Area of a Triangle
  • Operators
    • Converting Minutes to Years and Days
    • Basic Operators
    • Bitwise Operators
    • Program: Byte Sizes of Basic Data Types
    • cast and sizeof Operators
    • Operator Precedence
  • Control Flow
    • If-Else Statements
    • Program: Weekly Pay Calculation
    • Switch Statement
    • For Loop
    • While and Do-While Loops
    • Nested Loops and Loop Control
    • Program: Guess the Number
  • Arrays
    • Introduction to Arrays
    • Program: Prime Number Generator
    • Multidimensional Arrays
    • Program: simple Weather Program
    • Variable Length Arrays (VLAs)
  • Functions
    • Overview of Functions
    • Defining Functions
    • Arguments and Parameters
    • Returning Data from Functions
    • Variable Scoping
    • Program: Tic Tac Toe Game
    • Recursion
  • Strings
    • Defining a String
    • Constant Strings in C
    • Common String Functions
    • Program: Bubble Sort
    • Searching, Tokenizing, and Analyzing Strings
    • Converting Strings
  • Debugging
    • What is Debugging
    • Understanding the Call Stack
    • Common C Mistakes
    • Understanding Compiler Errors
  • Pointer
    • Defining Pointers
    • Accessing Pointers
    • Program: Pointer Demonstration
    • Pointers and Const
    • Void Pointers
    • String Pointers
    • Array Pointers
    • Utilizing Pointers with Functions
    • Pointer Arithmetic
  • Dynamic Memory Allocation
    • malloc, calloc, and realloc
    • Program: User Input String
    • Memory Deallocation
  • Structure
    • Structures and Arrays
    • Nested Structures
    • Structures and Pointers
    • Structures and Functions
    • Program: Structure pointers and Functions
  • File Input and Output
    • Accessing Files
    • Reading from a File
    • Program: Finding the Total Number of Lines in a Text File
    • Writing to a Text File
    • Finding Your Position in a File
    • Program: Converting Characters in a File to Uppercase
    • Program: Printing the Contents of a File in Reverse Order
  • The Standard C Library
    • Various Functions in C
    • Math Functions in C
    • Utility Functions in C
Powered by GitBook
On this page
  • Accessing Pointer Values
  • Displaying a Pointer's Value
  • Displaying an Address
  • Displaying the Number of Bytes a Pointer is Using
  • Example

Was this helpful?

  1. Pointer

Accessing Pointers

Accessing pointers involves retrieving and displaying both the values they point to and the memory addresses they hold. This section will cover various aspects of accessing pointers in C.

Accessing Pointer Values

  • To access the value pointed to by a pointer, you use the dereference operator (*). Here's an example:

    int number = 42;
    int *pointerToNumber = &number;
    
    // Accessing the value through the pointer
    int value = *pointerToNumber;

The variable value now contains the content of the memory location pointed to by pointerToNumber.

Displaying a Pointer's Value

  • You can display the value pointed to by a pointer using printf:

    printf("Value pointed to by the pointer: %d\n", *pointerToNumber);

This line prints the value pointed to by pointerToNumber.

Displaying an Address

  • To display the memory address stored in a pointer, you use the %p format specifier with printf:

    printf("Memory address stored in the pointer: %p\n", (void *)pointerToNumber);

The (void *) typecast is used to match the %p format specifier's requirements.

Displaying the Number of Bytes a Pointer is Using

  • You can determine the number of bytes a pointer is using with the sizeof operator:

    printf("Size of the pointer in bytes: %lu\n", sizeof(pointerToNumber));

This line prints the size of pointerToNumber in bytes.

Example

  • Here's a complete example demonstrating accessing pointer values and displaying information:

    #include <stdio.h>
    
    int main() {
        int number = 42;
        int *pointerToNumber = &number;
    
        // Accessing the value through the pointer
        int value = *pointerToNumber;
    
        // Displaying the value pointed to by the pointer
        printf("Value pointed to by the pointer: %d\n", *pointerToNumber);
    
        // Displaying the memory address stored in the pointer
        printf("Memory address stored in the pointer: %p\n", (void *)pointerToNumber);
    
        // Displaying the size of the pointer in bytes
        printf("Size of the pointer in bytes: %lu\n", sizeof(pointerToNumber));
    
        return 0;
    }

Running this program will provide insights into how to access pointer values and display related information.

This section gives you a comprehensive understanding of accessing pointers and displaying pertinent information. If you have specific questions or if there are additional topics you'd like to explore, feel free to ask!

PreviousDefining PointersNextProgram: Pointer Demonstration

Was this helpful?