일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- linux
- 리눅스
- 시스템프로그래밍
- error
- 백준알고리즘
- Windows 10
- C언어
- 코딩
- 알고리즘
- OpenCV
- 학습
- Windows10
- 딥러닝
- 턱걸이
- 프로세스
- 프로그래밍
- 텐서플로우
- 백준
- TensorFlow
- 공부
- 운영체제
- Computer Vision
- CV
- 쉘
- shell
- python
- 회귀
- C++
- c
- 영상처리
- Today
- Total
목록프로그래밍 (19)
줘이리의 인생적기
cout은 앞선 글에서도 자주 사용해서 cin과 같이 알아보겠습니다. cin은 사용자의 입력을 받는 함수로, cin 사용전 변수를 선언해주어야 합니다. #include using namespace std; int main() { cout a; cout
라이브러리와 충돌을 방지하기 위해 사용되는 명칭공간 사용법에 대해 공부해보겠습니다. 기본적으로 사용하는 cout, cin, endl등은 std 명칭공간에 위치합니다. std 명칭공간을 생략하기 위해 아래와 같은 방법을 사용합니다. #include using namespace std; int main() { int x = 100; cout
c++ 프로그래밍 순서 - 문제 정의 - 해법 설계 - 프로그램 작성 - 프로그램 컴파일(cpp파일들을 따로따로 컴파일하며 오브젝트 파일 생성) - 오브젝트 파일 링킹(오브젝트 파일들을 링커가 하나로 합치고 실행파일 생성) - 테스트 & 수정 visual studio 기본 debug 모드는 exe 파일 크기가 큼, 배포할 때는 적절치 않다. 변수 선언만 하고 초기화 안 하면 런타임 에러 발생 release 모드는 exe 파일 크기가 작고 배포할 때 적절하다. 변수 선언만 하면 젤 작은 값으로 자동 초기화(코드가 복잡해지고 에러 발생했을 때 아주 힘들 수 있음) 초기화(initialization), 할당(assignment) 객체는 메모리에 담긴다. 변수는 객체의 주소 대신 붙여주는 이름이다. 변수 x를 ..
sort 알고리즘은 오름차순, 내림차순, 사용자가 정의한 순서로 정렬해주는 알고리즘. default는 오름차순, 평균 시간복잡도는 퀵 정렬 기반이라 n*logn. sort 알고리즘은 헤더파일 안에 있음 #include 을 추가해야 한다. 원형 #array sort(array, array+n);//default 오름차순 sort(array, array+n, 함수); #vector sort(vector.begin(), vector.end()); // default 오름차순 sort(vector.begin(), vector.end(), less()); //오름차순 sort(vector.begin(), vector.end(), greater()); //내림차순 sort(vector.begin(), vector...
Index 지역 변수 전역 변수 정적 지역 변수 레지스터 변수 값 전달 방법 주소 전달 방법 1. 지역 변수 지역 변수는 일정 지역인 함수 내 범위에서 사용가능한 변수이므로 다른 함수에서는 사용할 수 없다. auto예약어와 함께 선언 하지만 생략 가능하다. 지역 변수는 이름이 같아도 선언된 함수에 따라 저장 공간이 따로 갖습니다. 2. 전역 변수 함수 밖에서 선언하는 변수를 전역 변수라고 한다. 사용 범위는 프로그램 전체이므로 함수로 제한되지 않는다. 문제점 ① 전역 변수 이름을 바꾸면 사용되는 변수를 모두 찾아 수정해야 한다. 문제점 ② 함수 내에 같은 이름의 지역 변수를 선언 시 그 영역에서는 전역 변수를 사용할 수 없다. 3. 정적 지역 변수 지역 변수와 static 예약어와 같이 선언하면 정적 지..
Index strcpy strncpy strcat, strncat strlen strcmp, strncmp 1. strcpy char배열의 단점은 다른 문자열로 바꾸려면 문자를 하나씩 옮겨야 하는 번거로움이다. strcpy(string copy)를 이용하면 문자열을 쉽게 복사할 수 있다. strcpy(복사 받을 곳, 복사할 내용) 복사 받을 곳이 위치하고 있는 첫 번째 인수는 char 배열이나 배열명을 저장한 포인터만 사용 가능하다. 복사할 내용이 위치하고 있는 두 번째 인수는 시작 위치를 알 수 있다면 어떤 것이든 사용 가능하다. (strcpy 함수 원형이 있는 string.h 헤더파일을 인클루드 해야한다.) 2. strncpy 복사할 때 문자의 수를 지정할 수 있다. strncpy(복사 받을 매열명,..
Index 문자열 상수 구현 char 포인터 gets 문자열 입력 fgets 문자열 입력 fflush puts, fputs 1. 문자열 상수 구현 컴파일러는 문자열을 char 배열 형태로 따로 보관하고 문자열 상수가 있던 곳은 배열의 위치 값을 사용한다. (주소로 접근하여 문자열을 바꾸는 것은 위험, 문자열 상수를 읽기 전용 메모리 영역에 저장하기 때문) 2. char 포인터 문자열을 char포인터에 대입하면 문자열에 이름을 붙여 사용할 수 있고, 다른 문자열로 쉽게 변경 가능. char포인터 예제 #include int main(void) { char* ch = "apple"; printf("입력 문자 : %s\n", ch); ch = "banana"; printf("변경 문자 : %s\n", ch);..
Index 아스키코드 getchar, putchar scanf의 문자 입력 과정 1. 아스키코드 아스키코드는 128개의 문자를 0~127의 숫자 중에 어떤 값으로 표현할지 정의한 것 2. getchar, putchar scanf함수로 문자를 입력할 때는 %c 변환 문자를 사용한다. 공백이나 개행 문자와 같은 제어 문자도 입력하므로 주의해야 한다. 예제 #include int main(void) { int c; c = getchar(); printf("입력문자 : "); putchar(c); putchar('\n'); return 0; } 실행결과 개행 문자까지 출력이 된 상태이다. 3. scanf의 문자 입력 과정 버퍼는 데이터를 보관하는 역할, 필요한 데이터를 한꺼번에 저장해놓으면 scanf 함수는 호..