sina jalalvandi
sina jalalvandi

Reputation: 1

why this pointer value not printed?

i have a code:

 #include <iostream>
using namespace std;

int main()
{
    int *a, y = 6 , *yPtr = &y;

    cout << "y:" << y << "| &y:" << &y << "| yptr:" << yPtr << "| *yptr:" << *yPtr << " | &yptr:" << &yPtr << " |a:" << a << endl;
    *a = y;
    cout<< "a:"<<a<<endl;

    return 0;
}

when i assign *a to y *a = y then *a value not printed for me

Upvotes: 0

Views: 68

Answers (1)

Joseph Larson
Joseph Larson

Reputation: 9058

This is because you never initialize a itself. *a points to who-knows-where, some random location. So you set some random location to 6.

As it's probably pointed outside of legal space, your program is probably quitting before it gets to the cout statement.

Upvotes: 2

Related Questions