Pointer Reference Increment

#include <iostream>

// Define incrementPtr(int* x)
// Increment the value pointed to by x
// Do nothing if x is nullptr

void incrementPtr(int* x) {
    if (nullptr == x) {
        return;
    } else {
        *x = *x + 1;

        return;
    }
}

// Define incrementRef(int& x)
// Increment the referenced value

void incrementRef(int& x) {
    x = x + 1;
}

int main() {
    int n;
    std::cin >> n;

    int a = n;
    incrementPtr(&a);
    std::cout << "After incrementPtr: " << a << "\n";

    int b = n;
    incrementRef(b);
    std::cout << "After incrementRef: " << b;

    return 0;
}

Solving Approach

 

 

 

Upvote
Downvote
Loading...

Input

5

Expected Output

After incrementPtr: 6 After incrementRef: 6