int *a = b는 int*변수인 a에 b의 값을 넣는 것이고 int &a = b는 int 변수인 a의 주소값에 b의 주소값을넣는거임
익명(112.148)2021-04-24 17:43
해당 댓글은 삭제되었습니다.
해당 댓글은 삭제되었습니다.2026-08-05 10:01
답글
그건 a변수에 10 저장한다는 의미 . 그냥 변수에 값 저장하는법 쓴거임
익명(59.2)2021-04-24 17:53
포인터 공부할때 많은 사람들이 실수하는 부분인데 변수 선언할때 *p 하는거랑 변수 사용할 때 *p 하는거랑 다름 마찬가지로 int &p랑 &p도 다름
익명(14.36)2021-04-24 17:57
답글
1. &은 주소 연산자, *는 참조 연산자. 그런데 변수를 선언할때 쓰게 되면 전자는 레퍼런스, 후자는 포인터임을 의미할 뿐 주소나 값을 가져오지 않음
2. 그래서 int* p를 선언하게되면 p에는 주소가 할당되어야하고, p앞에 *을 붙여서 *p를 쓰는 것으로 해당 주소에 저장된 값을 가져올 수 있음
익명(14.36)2021-04-24 18:12
답글
암튼 int &p = a 이건 주소연산자랑은 관계없는 다른 개념임 cpp 레퍼런스 검색 ㄱ
int* p; p = &a; - dc Cpp
둘다 같은건가요?
*p = 10;은 p에 뭘 넣어놨는지에 따라 달라짐 - dc Cpp
p가 a의 주소를 가지는거
그러니까 밑에는 *p를 그냥 p처럼 쓰는건가보네요
p를 *p처럼
p가 a의 주소값을 가지는거임 그냥
int *a = b는 int*변수인 a에 b의 값을 넣는 것이고 int &a = b는 int 변수인 a의 주소값에 b의 주소값을넣는거임
해당 댓글은 삭제되었습니다.
그건 a변수에 10 저장한다는 의미 . 그냥 변수에 값 저장하는법 쓴거임
포인터 공부할때 많은 사람들이 실수하는 부분인데 변수 선언할때 *p 하는거랑 변수 사용할 때 *p 하는거랑 다름 마찬가지로 int &p랑 &p도 다름
1. &은 주소 연산자, *는 참조 연산자. 그런데 변수를 선언할때 쓰게 되면 전자는 레퍼런스, 후자는 포인터임을 의미할 뿐 주소나 값을 가져오지 않음 2. 그래서 int* p를 선언하게되면 p에는 주소가 할당되어야하고, p앞에 *을 붙여서 *p를 쓰는 것으로 해당 주소에 저장된 값을 가져올 수 있음
암튼 int &p = a 이건 주소연산자랑은 관계없는 다른 개념임 cpp 레퍼런스 검색 ㄱ