일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 함수 인자 전달
- AppInventer
- 과초점거리
- 조건 제어문
- 이미지센서
- 무게선별자동화
- 실생활알고리즘
- image sensor
- 렌즈
- ASCCII
- 카메라
- C Mount
- Gain
- camera
- Patch Cleaner
- 저조도
- 간단한 앱만들어보기
- 심도
- 변수의 초기화와 대입
- 변수
- CS Mount
- 고정비트레이트
- Pixel Bit Format
- 프로그래머스 lv2
- Depth of Fileld
- Zoom Lense
- 아이리스
- c언어
- Digital Slow Shutter
- 저장소와 동적메모리
- Today
- Total
목록전체 글 (49)
카메라 개발자 공부방(SW)
자 오늘은 대망의 포인터 변수를 시작할 차례입니다. 오늘 하는 내용이 어렵게 느껴진다면 [9장] 변수와 주소를 꼭 복습해주세요. 포인터 변수는 주소를 저장하는 메모리 공간입니다. 포인터 변수도 변수기 때문에 메모리 공간(값)이 변경될 수 있고, 그 메모리에 접근할 수 있는 이름도 가지고 있습니다. 다음 코드를 보시죠 #include int main() { int n = 10; int* pn = &n; printf("%d %p %p\n", 10, &n, pn); return 0; } // 실행결과 // 10 008FF91C 008FF91C n이라는 메모리 공간의 시작 주소가 pn이라는 메모리 공간에 저장이 된 것입니다. 이때 포인터 변수 pn은 n이라는 메모리 공간을 가리킨다 라고 이야기할 수 있습니다. ..
자 다음은 변수와 주소에 대해 이야기해보겠습니다. 이 개념을 제대로 파악하지 못하면 다음 과정을 하는 것이 전혀 의미가 없을 정도로 굉장히 중요하니 집중하고 봅시다~! 모든 메모리에는 주소가 있습니다. 그리고 이 주소는 1byte마다 하나씩 할당되어있습니다. #include int main() { int n = 8; printf("%d\n", n); printf("%p\n", &n); return 0; } // 실행결과 // 8 // 00B9FAE0 위의 예제는 변수의 메모리 공간 주소를 출력하는 코드입니다. (%p 서식문자는 메모리의 주소를 출력할 때 사용됩니다.) n이라는 메모리 공간을 아래와 같이 그려보면 다음과 아래와 같습니다. n은 주소가 00B9FAE0로 시작되고 1byte 당 address가..
오늘은 사용자 함수에 대해 공부해보겠습니다. 지금까진 우리는 main이라는 함수의 내용(구현부)을 채워가며 실습을 해봤습니다. C언어에서 함수의 비중이 큰 만큼 명칭 하나하나 자세히 보겠습니다. returnType functionName(parameter) { /* your code */ return value; } 반환(return)이란 이 함수가 종료될 때 계산된 결과값을 다시 돌려준다는 의미입니다.(정확히는 함수를 호출했던 지점에 함수의 결과 값을 되돌려줍니다.) 반환이 있다면 반환 타입(returnType)과 return에 어떤 값을 반환할지 명시해야 합니다. 반환 타입이 없다면 반환 타입이 없다는 뜻으로 void로 선언하면 됩니다. 그리고 return도 없습니다. 함수의 이름(functionNa..
자 오늘은 변수의 초기화와 대입에 대해서 공부를 해보겠습니다. 초기화와 대입에는 큰 차이가 있는데요. 초기화는 메모리 공간이 만들어진 시점에 단 한번 값을 저장을 합니다. 대입은 메모리 공간이 만들어진 시점 이후에 메모리의 값을 변경시키는 연산입니다. 초기화는 단 한 번만 발생되고, 대입은 무한히 발생할 수 있습니다. 그런데 초기화를 하지 않으면, 메모리 안에는 어떤 값이 들어있을까요? 바로 쓰레기 값이 들어있답니다. #include int main() { int val; printf("val: %d\n", val); return 0; } // 실행결과 // 쓰레기값 출력 이 쓰레기 값은 runtime에 runtime error를 발생시킬 수 있습니다. 컴파일 에러는 작성한 코드가 컴파일 과정에 문제가 ..
자료형은 메모리를 어떤 용도로 얼만큼의 메모리 사용할지 관한 것으로 C언어에 미리 다 약속이 되어있답니다. 다음은 반드시 외워야 될 자료형입니다! Data Type 부호 사용 용도 크기 표현 가능 범위 char 문자 1byte 0 ~ 255 short 있음(signed) 정수 2byte -32,768 - 32767 int 있음(signed) 정수 4byte -2,147,483,648 ~ 2,147,483,647 long 있음(signed) 정수 4byte -2,147,483,648 ~ 2,147,483,647 long long 있음(signed) 정수 최소 8byte 2^63 ~ 2^63 -1 float 소수점 4byte 대략 10^-38 ~ 10^ 38 double 소수점 8byte 대략 10^-308..
자 오늘은 반복문에 대해서 이야기해보겠습니다. 반복문은 동일한 코드를 여러번 작성해야 할 때 유용하게 사용할 수 있는 기능입니다. C에선 for와 while을 제공합니다. for문의 사용법을 보겠습니다~!. for (초기값;조건문;증감문) { /* your code */ } 초기값은 변수가 들어가서 "몇 부터 시작할지"에 대한 초기 값 설정을 하는 곳입니다. 조건문은 for 문의 탈출 조건에 해당되며, 조건이 false일 때 까지 아래의 { } 를 반복해서 수행합니다. 증감문은 초기값에 설정된 변수에 가산 혹은 감산을 위해 사용됩니다. 다음은 while문의 사용법을 보겠습니다~! 초기값 while (조건문) { /* your code */ 증감문 } for문과 기능적으로 완전히 동일하지만, 쓰이는 모양이..