Examples of pointers in c++ Programming

0

pointers are variables that store the memory addresses of other variables:

 

All Contributions

new and delete Operator for Objects:

#include <iostream>
using namespace std;
class Student {
    int age;
   public:
    // constructor initializes age to 12
    Student() : age(12) {}
    void getAge() {
        cout << "Age = " << age << endl;
    }
};
int main() 
{
    // dynamically declare Student object
    Student* ptr = new Student();
    // call getAge() function
    ptr->getAge();
    // ptr memory is released
    delete ptr;
    return 0;
}

new and delete Operator for Arrays

Program to store GPA of n number of students and display it:

#include <iostream>
using namespace std;
int main() 
{
    int num;
    cout << "Enter total number of students: ";
    cin >> num;
    float* ptr;
    // memory allocation of num number of floats
    ptr = new float[num];
    cout << "Enter GPA of students." << endl;
    for (int i = 0; i < num; ++i) {
        cout << "Student" << i + 1 << ": ";
        cin >> *(ptr + i);
    }
    cout << "\nDisplaying GPA of students." << endl;
    for (int i = 0; i < num; ++i) {
        cout << "Student" << i + 1 << " :" << *(ptr + i) << endl;
    }
    // ptr memory is released
    delete[] ptr;
    return 0;
}

Dynamic Memory Allocation:

#include <iostream>
using namespace std;
int main() 
{
    // declare an int pointer
    int* pointInt;
    // declare a float pointer
    float* pointFloat;
    // dynamically allocate memory
    pointInt = new int;
    pointFloat = new float;
    // assigning value to the memory
    *pointInt = 45;
    *pointFloat = 45.45f;
    cout << *pointInt << endl;
    cout << *pointFloat << endl;
    // deallocate the memory
    delete pointInt;
    delete pointFloat;
    return 0;
}

Passing by reference using pointers:

#include <iostream>
using namespace std;
// function prototype with pointer as parameters
void swap(int*, int*);
int main()
{
    // initialize variables
    int a = 1, b = 2;
    cout << "Before swapping" << endl;
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;
    // call function by passing variable addresses
    swap(&a, &b);
    cout << "\nAfter swapping" << endl;
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;
    return 0;
}
// function definition to swap numbers
void swap(int* n1, int* n2) {
    int temp;
    temp = *n1;
    *n1 = *n2;
    *n2 = temp;
}

Passing by reference without pointers:

#include <iostream>
using namespace std;
// function definition to swap values
void swap(int &n1, int &n2) {
    int temp;
    temp = n1;
    n1 = n2;
    n2 = temp;
}
int main()
{
    // initialize variables
    int a = 1, b = 2;
    cout << "Before swapping" << endl;
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;
    // call function to swap numbers
    swap(a, b);
    cout << "\nAfter swapping" << endl;
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;
    return 0;
}

total contributions (10)

New to examplegeek.com?

Join us