C#만 쓰다가 C++을 공부 중에 있습니다.


이번에 운영체제를 공부하다가 포인터에 대해서 다시금 생각해보게 되었는데요


만약 



int n = 1;

int* ptr_n = &n;


이라고 가정했을 때, 만약 이 ptr_n 값이 25000이 나왔다면 (물론0x16fdff2e8이런식으로 나온다는걸 알고있습니다만)


int* ptr_n2 = 25000;


이렇게 선언하면 ptr_n과 ptr_n2가 같은 값을 가리키게 되는건가요?

그렇다면


std::cout << *ptr_n << std::endl;

std::cout << *ptr_n2 << std::endl;


이게 서로 같은 값을 출력하는게 맞나요?



실제로 코딩해서 확인해봤는데 포인터값은 0x16fdff2e8이런식으로 long 타입이라 int*형식에 대입할 수가 없고

long으로 선언했을 경우엔 *ptr_n2 출력이 불가능해서 확인할 방법이 업내용 ㅠㅠ