본문 바로가기

포인터배열2

[C언어] 제 16 강 : 배열과 포인터, 포인터 연산 새벽인대 잠이 안와서 포스팅이나 하렵니다~~ㅋㅋㅋㅋ 포스팅 하다보면 잠이 오겠죠^-^ 저번 포인터 그리고 포인터 배열 내용에 계속 되는 부분 입니다~ * : 메모리 참조 & : 주소 값 반환 요 2가지 연산자는 저번 시간에 배웠죠~? 복습합시다~! 포인터를 피연산자로 하는 곱셈과 나눗셈은 불가능하지만 덧셈과 뺄셈은 가능합니다. 포인터에서의 덧셈과 뺄셈은 일반적인 산술연산과는 조금 다른 의미를 가지고 있습니다. int number = 1; int* ptr = &number; 여기서 ptr의 값을 10진수로 출력 시켜보고 그리고 ptr++ 을 통해서 값을 증가시켜보고 출력시켜보세요. 결과는 어떻게 나올까요? 처음의 값보다 4가 증가됩니다. 즉 ptr에 1을 더하면 1이 증가해야되지만 4가 증가한다는 얘기입니.. 2012. 1. 22.
[C언어] 제 15 강 : 포인터의 포인터 그리고 포인터 배열 포인터 변수도 변수의 한 형태이기 때문에 선언 시 메모리 영역에 4바이트의 메모리 공간 할당이 이뤄지기 때문에 당연히 포인터 변수 자체애 대한 주소 값도 존재를 하겠죠~? int number = 1; int* ptr = &number; printf("ptr의 저장 값은? %#x", ptr); printf("ptr의 주소 값은? %#x", &ptr); 위의 소스 코드를 출력해보세요~ 분명히 ptr의 저장 값과 주소 값은 다릅니다. ptr의 저장 값은 number변수의 주소 값이고 ptr의 주소 값은 말 그대로 포인트 변수 ptr의 주소 값이겠지요? 그렇습니다. 그리고 이 값을 다시 포인터 형 변수에 저장 할 수 있습니다. 즉, 포인터의 포인터(주소값)을 저장할 수 있는 것이죠^-^!! int number .. 2012. 1. 19.