반응형
아래 예시를 봅시다. 변수 var 을 정의하고, var 주소를 갖는 포인터 pvar을 정의했습니다. pvar에 1을 더한 pvar2 도 정의했습니다. var 과 pvar의 사이즈를 출력했고, pavr과 pavr2 의 주소를 출력했습니다.
#include <stdio.h>
int main ()
{
int var=1;
int *pvar=&var;
int *pvar2=pvar+1;
printf("%ld \n",sizeof(var) );
printf("%ld \n \n",sizeof(pvar) );
printf("%p \n",pvar);
printf("%p",pvar2);
}
결과는 아래와 같습니다.
pvar 은 인트형인데도 길이가 8입니다. 이 길이는 운영체제에 의해 결정됩니다.
주소가 출력된 것을 보면 1을 더했는데 4가 더해진 것을 알 수 있습니다. 인트형이라서 4만큼 이동됩니다.
반응형
'C언어 > 포인터' 카테고리의 다른 글
[C언어] 배열포인터 vs 포인터배열 (0) | 2022.07.07 |
---|---|
[C언어] 배열포인터 (배열을 가리키는 포인터) (0) | 2022.07.07 |
[C언어] 포인터의 주소를 저장하는 더블포인터 (포인터의 포인터) (0) | 2022.07.06 |
[C언어] 포인터 변수가 일반변수와 다른 점 (0) | 2022.06.29 |
[C언어] 포인터변수에 값을 입력하면 어떻게 될까 (0) | 2022.06.28 |
댓글