[정답] 47. 포인터 + 정수
◈ 기본 연습
1. char 형식을 원소로 하는 포인터 변수 p를 선언하고 1000으로 초기화하세요.
그리고 p에 4를 더한 후에 p가 얼마인지 출력하세요.
답: 1004
char 형식의 크기는 1 바이트이므로 p+4를 하면 p에서 sizeof(char)*4를 더하므로 1004
//char 형식을 원소로 하는 포인터 변수 p를 선언하고 1000으로 초기화하세요.
//그리고 p에 4를 더한 후에 p가 얼마인지 출력하세요.
#include <stdio.h>
int main(void)
{
char *p = (char *)1000;
printf("%d\n", p + 4);
return 0;
}
2. short 형식을 원소로 하는 포인터 변수 p를 선언하고 1000으로 초기화하세요.
그리고 p에 4를 더한 후에 p가 얼마인지 출력하세요.
답: 1008
short 형식의 크기는 2 바이트이므로 p+4를 하면 p에서 sizeof(short)*4를 더하므로 1008
//short 형식을 원소로 하는 포인터 변수 p를 선언하고 1000으로 초기화하세요.
//그리고 p에 4를 더한 후에 p가 얼마인지 출력하세요.
#include <stdio.h>
int main(void)
{
short *p = (short *)1000;
printf("%d\n", p + 4);
return 0;
}
3. int 형식을 원소로 하며 원소 개수가 10인 배열 arr을 선언하세요.
int 형식을 원소로 하는 포인터 변수 p를 선언하고 arr+5로 초기화하세요.
arr과 p의 값을 출력하세요.
답: 12188244
12188264 (실행할 때마다 다릅니다. 그렇지만 두 수의 차이는 20입니다.)
//int 형식을 원소로 하며 원소 개수가 10인 배열 arr을 선언
//int 형식을 원소로 하는 포인터 변수 p를 선언하고 arr + 5로 초기화
//arr과 p의 값을 출력
#include <stdio.h>
int main(void)
{
int arr[10];
int *p = arr + 5;
printf("%d
%d\n", arr, p);
return 0;
}
'언어 자료구조 알고리즘 > 디딤돌 C언어' 카테고리의 다른 글
[정답] 디딤돌 C언어 73. 문자열 정리하기 (0) | 2016.05.01 |
---|---|
[정답] 디딤돌 C언어 67. 정리하기(함수) (0) | 2016.05.01 |
[정답] 디딤돌 C언어 52. 함수 개요 (0) | 2016.05.01 |
[정답] 디딤돌 C언어 50. 인덱스 연산자 (0) | 2016.05.01 |
[정답] 디딤돌 C언어 49. 간접 연산자 (0) | 2016.05.01 |
[정답] 디딤돌 C언어 46. 배열 선언문 (0) | 2016.05.01 |
[정답] 디딤돌 C언어 44.정리하기(제어문) (0) | 2016.05.01 |
[정답] 디딤돌 C언어 43. 제어문 연습 - 별출력 (0) | 2016.04.30 |
[정답] 41. 반복문(while, do while, for) (0) | 2016.04.30 |
[정답] 디딤돌 C언어 40. 선택문(switch case) (0) | 2016.04.30 |