티스토리 뷰
#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
- erosion
- 캐니 엣지
- morphology
- segmentation
- direction detection
- 영상처리
- canny operator
- Low pass filter
- hough transform
- median filter
- gradient
- morphological operation
- high pass filter
- OpenCV
- canny
- bilateral filter
- laplacian of gaussian
- equalizing
- top hat
- mean filter
- pyrDown
- difference of gaussian
- dilation
- Sobel
- pyrUp
- black top hat
- upsampling
- Filter
- Line Detection
- adaptive thresholding
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
글 보관함