직접, 간접 주소 개념으로 직접 주소 지정 방식을 통해
주소에 별칭이자 이름을 붙여주는게 변수라는것이고
그 주소에 값을 할당하는게 변수의 초기화지
그리고 간접 주소 지정 방식을 구현하기 위해 포인터를 쓰는거지?
포인터는 원본 주소 자체를 갖는게 아닌 주소를 가르키고 전달하는 이정표이자, 공간인거지?
근데
포인터는 보면 볼수록 벡터 닮지 않음?
물론 완전 같다는건 아닌데
방향을 갖고, 크기가(주소는 바이트 형태의 크기를 갖으니까)
존제한다는 점에선 유사한거 같음
파이썬으로 알고리즘&자료구조 첨 맛봤었는데 주소를 이렇게 귀찮고 자유롭게 다룰수 있는점에서 왜 c로 알고&자료를 공부하라는지 알거같음
- dc official App
(대충 포인터 짤)
포끼야아아악! - dc App
포인터 특) 나중에 귀찮아서 자바함
자바에선 갈바지 컬렉터가 다 딸깍 해주는거지? - dc App
예압
@야타코이 자바를 먼저 배웠었는데 이제야 저게 뭔소린지 와닿네 - dc App
ㅇㅇ 그래서 보통 C -> C++ -> Java 테크타면 C 가기 싫어짐
@야타코이 그래도 c에는 낭만이 있다. - dc App
메모리에 들어 있는 주소를 읽어서 그 주소로 이동하는 어셈블리의 간접 점프가 C로 넘어오면 포인터 개념으로 일반화된 것 니 말이 맞는 듯
어셈블리는 진짜 공포의 영역이구나 호달달 - dc App
나도 c에서 문자열 문자 나누는 방식이 보초 값으로 null 쓰거나 배열시 인데스 이동해서 메모리 크기만큼 이동하는 게 센세이션했지
@ai로공포게임만들기 아까 int *ptr;ptr= &example;과*ptr=0x001; 이 이야기의 뜻을 마참내 깨달았습미다! ptr =*ptr =포인터를 다루는데 차이가 있었어요int *ptr = &a;로 포인터 변수를 선언하고 주소를 할당하면 ==> 포인터가 가르키는 대상 주소가 변한다는것ptr = &a면 a주소를 포인터를 저장한 변수가 바뀐다는것*ptr =은 포인터가 가르키는 대상을,ptr =은 포인터를 저장하는 포인터 변수 자체를 바꿈파이썬에서node.link = node2 == *ptr =과 같고node2 = node3 == ptr = 과 같겠죠?!?!?!?!?!?!?!!!!! - dc App