일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 변수의 초기화와 대입
- 저조도
- main 함수 인자 전달
- Patch Cleaner
- Pixel Bit Format
- 실생활알고리즘
- 과초점거리
- Gain
- C Mount
- 프로그래머스 lv2
- 고정비트레이트
- Depth of Fileld
- 무게선별자동화
- 조건 제어문
- 렌즈
- image sensor
- Zoom Lense
- Digital Slow Shutter
- CS Mount
- 저장소와 동적메모리
- 아이리스
- c언어
- camera
- 카메라
- 간단한 앱만들어보기
- AppInventer
- 이미지센서
- ASCCII
- 변수
- 심도
- Today
- Total
목록전체 글 (49)
카메라 개발자 공부방(SW)
이번 시간은 string.h를 활용한 문자열 처리에 대해 공부해보겠습니다. 에는 문자열을 손쉽게 처리하기 위한 함수들이 내장되어있습니다. 그중에서 우린 문자열 복사, 길이, 덧붙이기, 탐색에 대해 살펴보겠습니다. 문자열 복사는 strcpy 함수로 가능합니다. strcpy 첫 번째 인자는 복사될 메모리 주소(Destination) 두 번째 인자는 복사할 문자열 주소(Source)입니다. #define _CRT_SECURE_NO_WARNINGS #include #include int main() { const char* pStr = "Hello World"; char buf[32] = {}; strcpy(buf, pStr); printf("%s", buf); return 0; } // 실행결과 // Hell..
자 오늘은 문자열에 대한 내용 주로 다루겠습니다. 문자와 문자열의 차이를 꼭 아셔야 됩니다. 문자는 값입니다. 문자열은 문자들의 집합입니다. (너무나도 당연한 소리 같죠?) #include int main() { printf("%c\n", 'A'); printf("%s\n", "Hello World\n"); return 0; } // 실행결과 // A // Hello World 자 이제 집중하셔서 보셔야됩니다. 문자열은 첫 번째 문자를 가리키는 상수 포인터입니다. #include int main() { printf("%p\n", "Hello World\n"); return 0; } // 실행결과 // 008EF91C 주소 연산자를 하는 서식 문자(%p)를 사용해보면 "Hello World"의 주소가 출력..
자 오늘은 포인터의 포인터를 공부해볼 시간입니다. 앞장의 포인터 변수를 꼭 공부를 한 후 찾아와 주세요. 포인터 변수도 어떤 값을 저장하는 메모리 공간(변수)이기 때문에 1바이트마다 주소가 있습니다. 다음 코드를 보시죠 #include int main() { int n = 10; int *pn = &n; int **ppn = &pn; printf("%p %p %p %p\n", &n, pn, &pn, ppn); return 0; } // 실행결과 // 008EF91C 008EF91C 008FF91C 008FF91C ppn이란 이름의 메모리는 pn의 메모리 공간의 주소를 저장하고 있습니다. int*의 address type만 저장시킬 수 있습니다. (pn이란 이름의 메모리 공간은 int*의 address t..
보호되어 있는 글입니다.
자 오늘은 포인터와 배열의 예제 코드를 작성해보는 시간을 가져보겠습니다. #include int main() { int arr[4] = {1, 2, 3, 4}; int* parr = arr; for (int k = 0; k < 4; k++) printf("%d ", parr[k]); return 0; } // 실행 결과 // 1 2 3 4 배열의 이름은 첫 번째 요소의 주소입니다. (익숙하지 않으시다면 9-10장을 꼭 복습해주세요.) parr(포인터 변수)에 arr의 주소를 저장해서 모든 원소를 출력하였습니다. #include int main() { int arr[4] = {1, 2, 3, 4}; int* parr = &arr[2]; printf("%d %d\n", parr[1], *arr); retur..
오늘은 포인터에 이어서 배열에 대해 공부하겠습니다. (배열과 포인터는 아주 밀접한 관계가 있기 때문에 포인터와 마찬가지로 집중해서 공부해야 될 부분입니다.) 자 그러면 배열은 무엇일까요? 배열은 연속된 메모리 공간을 의미하고, 선언해야 될 변수의 개수가 많을 때 사용됩니다. 선언해야 될 변수의 개수가 많은데, 변수를 일일이 선언하게 된다면 반복되는 코드가 많이 늘어나고 코드 관리가 어렵게 됩니다. (코드는 가독성이 생명입니다.) 그래서 배열이 필요한 것입니다. 배열은 아래와 같이 선언할 수 있습니다. dataType arrayName[size]; // example int arr[5] = {}; arr이란 이름의 배열의 선언 됐고 data type은 int이며 5가개 선언됐다는 뜻입니다. #include..