[열혈c프로그래밍] 문제 18-1 내 답안
2019. 8. 28. 17:14
문제 1
int main(void)
{
int* arr1[5];
int* arr2[3][5];
int** parr1 = arr1;
int* (*parr2) = arr2;
}
문제 2
#include <stdio.h>
void SimpleFuncOne(int* ptr1, int* ptr2);
void SimpleFuncTwo(int(*ptr3)[4], int(*ptr4)[4]);
int main(void)
{
int arr1[3] = { 1,2,3 };
int arr2[4] = { 1,2,3,4 };
int arr3[3][4] = { {1,2,3,4},{5,6,7,8},{9,10,11,12} };
int arr4[2][4] = { {1,2,3,4},{5,6,7,8} };
SimpleFuncOne(arr1, arr2);
SimpleFuncTwo(arr3, arr4);
return 0;
}
void SimpleFuncOne(int* ptr1, int* ptr2)
{
printf("%d \n", ptr1[0]);
printf("%d \n", ptr2[1]);
}
void SimpleFuncTwo(int(*ptr3)[4], int(*ptr4)[4])
{
printf("%d \n", ptr3[0][2]);
printf("%d \n", ptr4[0][3]);
}
문제 3
#include <stdio.h>
void ComplexFuncOne(int** ptr1, int* (*ptr2)[5]);
void ComplexFuncTwo(int*** ptr3, int*** (*ptr4)[5]);
int main(void)
{
int* arr1[3];
int* arr2[3][5];
int** arr3[5];
int*** arr4[3][5];
ComplexFuncOne(arr1, arr2);
ComplexFuncTwo(arr3, arr4);
return 0;
}
문제 4
3 2
6 4
5 2
1 1
문제 5
*(arr1[1][0]+1)
*(*(arr1[1]+0)+1)
*(*(*(arr1+1)+0)+1)
(*(*(arr1+1)+0))[1]
(*(arr1+1))[0][1]
'프로그래밍 언어 > C언어' 카테고리의 다른 글
[열혈c프로그래밍] 문제 17-1 내 답안 (0) | 2019.08.19 |
---|---|
[열혈c프로그래밍] 문제 16-1 내 답안 (0) | 2019.08.18 |
[열혈c프로그래밍] 도전! 프로그래밍2 (0) | 2019.08.13 |
[열혈c프로그래밍] 문제 14-2 내 답안 (0) | 2019.08.13 |
[열혈c프로그래밍] 문제 14-1 내 답안 (0) | 2019.08.13 |