티스토리 뷰
#includeint main() { int *p = malloc(sizeof(int)); printf("%#.8x\n", p); // p가 가리키는 주소 printf("%#.8x\n", p + 1); // 4byte 증가 printf("%#.8x\n\n", &p + 1); // p가 저장된 주소 + 4byte int a[4]; printf("%d\n", sizeof(a)); // 16 printf("%#.8x\n", a); printf("%#.8x\n", a + 1); // 4byte 증가 printf("%#.8x\n", &a); // a와 동일 printf("%#.8x\n\n", &a + 1); // 16byte 증가 char **p2 = (char**) malloc(100 * sizeof(char*)); printf("%#.8x\n", p2); // type : char ** printf("%#.8x\n", p2 + 1); // contents type : char * -> 4byte 증가 printf("%#.8x\n", *p2); // type : char * printf("%#.8x\n", *p2 + 1); // contents type : char -> 1byte 증가 printf("%#.8x\n", &p2); // type : char *** printf("%#.8x\n\n", &p2 + 1); // contents type : char ** -> 4byte 증가 double **p3 = (double**)malloc(100 * sizeof(double)); printf("%#.8x\n", p3); // type : double ** printf("%#.8x\n", p3 + 1); // contents type : double * -> 4byte 증가 printf("%#.8x\n", *p3); // type : double * printf("%#.8x\n", *p3 + 1); // contents type : double -> 8byte 증가 printf("%#.8x\n", &p3); // type : double *** printf("%#.8x\n\n", &p3 + 1); // contents type : double ** -> 4byte 증가 int *a2[4]; // -> 주소로 쓰려면 int ** type printf("%d\n", sizeof(a2)); // 16 printf("%#.8x\n", a2); // type : int * [4] printf("%#.8x\n", a2 + 1); // contents type : int * -> 4byte 증가 printf("%#.8x\n", a2[0]); // type : int * printf("%#.8x\n", a2[0] + 1); // contents type : int -> 4byte 증가 //printf("%#.8x\n", *a2[0]); // type : int //printf("%#.8x\n", *a2[0] + 1); // a2[0] 주소에 있는 값(쓰레기값) + 1 printf("%#.8x\n", &a2); // type : int *(*)[4] printf("%#.8x\n\n", &a2+ 1); // contents type : int *[4] -> 16byte 증가 int(*p4)[4] = (int (*)[4])malloc(sizeof(int [4])); // type : int(*)[4] printf("%d\n", sizeof(p4)); // 4 -> type :int (*) [4] -> pointer printf("%d\n", sizeof(*p4)); // 16 -> type : int[4] // (*p)[0]는 int type printf("%#.8x\n", p4); // type : int (*)[4] printf("%#.8x\n", p4 + 1); // contents type : int[4] -> 16byte 증가 printf("%#.8x\n", &p4); // type : int (*(*))[4] printf("%#.8x\n", &p4 + 1); // contents type : int (*) [4] -> 4byte 증가 system("pause"); }
'Coding > C' 카테고리의 다른 글
| 함수 리턴 및 메모리 접근 (0) | 2018.05.28 |
|---|---|
| 함수 parameter 및 메모리 접근 연습 (0) | 2018.05.28 |
| 포인터 타입에 따른 메모리 접근.. (0) | 2018.05.26 |
| 2차원 배열의 메모리 분석 (0) | 2018.05.26 |
| 배열을 함수의 인자로 넘기는 경우 주의할 점 (0) | 2018.05.22 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- median filter
- canny operator
- pyrUp
- laplacian of gaussian
- high pass filter
- pyrDown
- morphology
- morphological operation
- upsampling
- equalizing
- top hat
- dilation
- 캐니 엣지
- Line Detection
- gradient
- segmentation
- difference of gaussian
- black top hat
- mean filter
- erosion
- OpenCV
- bilateral filter
- direction detection
- hough transform
- Low pass filter
- canny
- adaptive thresholding
- Sobel
- 영상처리
- Filter
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
글 보관함
