Jump to content


Replying to Multiple levels of indirection in C++ pointers


Post Options

    • Can't make it out? Click here to generate a new image

Attach Files

   Max. single file size: 64MB

  or Cancel


Topic Summary

Zinia10

Posted 30 July 2023 - 06:29 PM

In computer programming, a pointer is a variable that stores the address of another variable. This means that a pointer can point to another pointer, which can point to another pointer, and so on. This is called multiple levels of indirection.

For example, let's say we have a variable called x that stores the address of a variable called y. We can then create a pointer called p that stores the address of x. This means that p points to x, which in turn points to y.

C
int x = 10;
int *y = &x;
int **p = &y;

In this example, p is a pointer to a pointer to an integer. This means that p can be used to indirectly access the value ofx.

Multiple levels of indirection can be used to achieve a variety of programming tasks. For example, they can be used to implement linked lists, trees, and other data structures.Here is a c++ resource that you may find helpful.


CStrike09

Posted 10 November 2021 - 12:38 PM

 

By this we mean to say that we can have many pointers pointing to each other. A pointer pointing to another pointer is considered as a level of indirection so lets say I have created a pointer a which is pointing to some int temp and now I create a pointer b which is pointing to pointer a so here this is a simple case of indirection where pointer b is not directly pointing towards temp but it points to a which is pointing towards temp, other than indirection pointers have other cool properties and uses most of them discussed by  Scaler Topics you can go through these once 


jaegarkillskaiju

Posted 10 November 2021 - 09:47 AM

What do we mean by when we say pointers can have multiple levels of indirection?


Review the complete topic (launches new window)