반응형
1. 일반 변수와 포인터 변수가 저장하는 값의 차이점을 적으시오.
일반 변수는 프로그램에서 사용하는 데이터를 직접 저장하고, 포인터 변수는 데이터가 저장된 주기억장치의 주소를 저장한다.
2. 다음 코드와 같이 int형 변수 sum이 선언되어 있을 때 ptr이란 포인터 변수가 sum을 가리키게 한 후 ptr을 이용하여 sum에 저장된 값을 출력하도록 밑줄을 채우시오.
int sum = 0;
int* ptr; //ptr 선언
ptr = ∑ //ptr이 sum을 가리키기
printf("sum = %d \n", *ptr); //ptr을 이용하여 sum 값을 출력하기
3. 다음 코드의 결과를 추정함으로써 무엇을 하기 위한 코드인지 적고 프로그램으로 완성하여 실행한 다음 추정한 결과와 실행결과를 비교해보시오.
int a = 20, b = 10, * p1, * p2, * p3;
p1 = &a;
p2 = &b;
if (*p1 > * p2)
{
p3 = p1; p1 = p2; p2 = p3; //p1과 p2가 가리키는 주소 교환
} //a와 b값은 그대로, p1이 b를 기리키고 p2가 a를 가리키게 됨
printf("a = %d, b = %d \n", a, b); //20, 10
printf("*p1 = %d, *p2 = %d\n", *p1, *p2); //10, 20
4. int *ptr = &var;로 선언한 포인터 변수 ptr에 대해 ptr과 *ptr이 참조하는 내용이 어떻게 다른지 차이점을 적으시오.
ptr은 주소를 참조하고, *ptr은 주소가 가리키는 장소에 저장된 내용을 가리킨다.
5. 다음 코드의 실행 결과를 적으시오.
int index = 0, *ptr;
ptr = &index;
index++;
*ptr = *ptr + 1;
printf("index = %d, *ptr = %d \n", index, *ptr);
//index = 2, *ptr = 2
6. 다음 코드의 실행 결과를 적으시오.
char ch, * ptr;
ptr = "Welcome to";
ch = 'C';
printf(">> %s %c %s%s\n", ptr, ch, "Language", "!!!");
//Welcome to C Language!!!
7. 다음 코드의 실행 결과를 적으시오.
int* ptr, a[5] = { 10, 20, 30, 40, 50 };
ptr = a;
printf("간접 참조: %d, 직접 참조: %d", *(ptr + 3), a[3]);
//간접 참조: 40, 직접 참조: 40
8. 다음 코드의 실행 결과를 적으시오.
char* ptr, note[] = "See you at the snack bar!";
ptr = note;
puts(ptr); //See you at the snack bar!
ptr++;
puts(++ptr); //e you at the snack bar!
note[7] = '!';
note[8] = '\n';
puts(note); //See you!(줄바꿈) t the snack bar!
9. 다음 코드의 실행 결과를 적으시오.
char* ptr, word[] = "Bye!";
ptr = word + strlen(word); //word + 4 -> 널문자
while (--ptr >= word) //역순으로 출력
puts(ptr);
/*
!
e
ye!
Bye!
*/
10. 다음 배열에서 1~4가 의미하는 배열 원소는 무엇인지 밑줄에 적으시오.
int matrix[2][3] = {{1, 2, 3}, {10, 20, 30}};
1. *matrix -> martix[0]
2. *matrix[0] -> matrix[0][0]
3. *matrix[1] -> matrix[1][0]
4. *(matrix[1] + 1) -> matrix[1][1]
반응형
'프로그래밍 > C, C++' 카테고리의 다른 글
c언어 콘솔에서 음악 동시에 재생하기(mcisendCommand, playsound) (3) | 2020.11.18 |
---|---|
<C프로그래밍-새내기를 위한 첫 C 언어 책>연습문제 chapter 10(11, 12, 13, 14, 15) (0) | 2020.10.18 |
<C프로그래밍-새내기를 위한 첫 C 언어 책>연습문제 chapter 9 (1, 2, 3, 4, 5) (0) | 2020.10.16 |
<C프로그래밍-새내기를 위한 첫 C 언어 책>연습문제 chapter 8 (11, 12, 13) (0) | 2020.10.16 |
<C프로그래밍-새내기를 위한 첫 C 언어 책>연습문제 chapter 8 (6,7,8,9,10) (0) | 2020.09.20 |