C++ array of pointers

« Previous Chapter Next Chapter »

Before we understand the concept of arrays of pointers, let us consider the following example which makes use of an array of 3 integers:

Example

#include <iostream>
 
using namespace std;
const int MAX = 3;
 
int main ()
{
   int  var[MAX] = {10, 100, 200};
 
   for (int i = 0; i < MAX; i++)
   {
      cout << "Value of var[" << i << "] = ";
      cout << var[i] << endl;
   }
   return 0;
}
                                        

When the above code is compiled and executed, Output Will Be :

Example

Value of var[0] = 10
Value of var[1] = 100
Value of var[2] = 200
                                        

There may be a situation when we want to maintain an array which can store pointers to an int or char or any other data type available. Following is the declaration of an array of pointers to an integer:

Example

int *ptr[MAX];
                                        

This declares ptr as an array of MAX integer pointers. Thus, each element in ptr, now holds a pointer to an int value. Following example makes use of three integers which will be stored in an array of pointers as follows:

Example

#include <iostream>
 
using namespace std;
const int MAX = 3;
 
int main ()
{
   int  var[MAX] = {10, 100, 200};
   int *ptr[MAX];
 
   for (int i = 0; i < MAX; i++)
   {
      ptr[i] = &var[i]; // assign the address of integer.
   }
   for (int i = 0; i < MAX; i++)
   {
      cout << "Value of var[" << i << "] = ";
      cout << *ptr[i] << endl;
   }
   return 0;
}
                                        

When the above code is compiled and executed, Output Will Be :

Example

Value of var[0] = 10
Value of var[1] = 100
Value of var[2] = 200
                                        

You can also use an array of pointers to character to store a list of strings as follows:

Example

#include <iostream>
 
using namespace std;
const int MAX = 4;
 
int main ()
{
   char *names[MAX] = {
                   "Sophia Lomela",
                   "Hina ali",
                   "Nuha ali",
                   "Sara ali",
   };
   for (int i = 0; i < MAX; i++)
   {
      cout << "Value of names[" << i << "] = ";
      cout << names[i] << endl;
   }
   return 0;
}
                                        

When the above code is compiled and executed, Output Will Be :

Example

Value of names[0] = Sophia Lomela
Value of names[1] = Hina ali
Value of names[2] = Nuha ali
Value of names[3] = Sara ali
                                        


« Previous Chapter Next Chapter »

Have Any Suggestion? We Are Waiting To Hear from YOU!

Your Query was successfully sent!