setlocale 사용법

프로그래밍/c++ 2013. 1. 28. 12:04

c++에서 ifstream이나 ofstream으로 파일을 열고 생성할 때, 경로명 또는 파일명에 한글이 포함되면 파일 입출력이 동작하지 않는다. 경험이 없다면 찾기 힘든 문제이다.


해결법은 setlocale(LC_ALL, "")을 호출해 주면 된다. 파일 입출력 루틴 앞에 해 주어도 되고 프로그램 시작 부분에 해도 되고 아무 곳에서나 한번만 호출해 주면 된다.


setlocale(LC_ALL, "Korean")을 해 주어도 동작하지만 컴퓨터의 시스템 지역 설정을 따르게 하는 setlocale(LC_ALL, "")를 사용하는게 좋을 것 같다. 한글을 사용하는 사람들은 지역설정(locale)을 한글로 해 놓았을 테니까 ^^


일시적으로만 locale을 바꾸고 싶다면 다음과 같이 처리한다.


// 현재 locale을 저장

char *old_locale_tmp = setlocale(LC_ALL, NULL); // 임시 locale 문자열 주소 반환

char *old_locale_saved = strdup(old_locale_tmp); // 반환받은 old locale 문자열 주소가 이후 setlocale 호출로 변경되지 않도록 별도로 메모리를 할당받아서 저장


// locale을 변경하고 필요한 작업을 수행

setlocale (LC_ALL, new_locale);

...


// locale을 복구

setlocale(LC_ALL, old_locale_saved);

free(old_locale_saved);


by 다크 프로그래머

수학공식(참고용)

수학 이야기 2013. 1. 28. 11:54

아래 수학 공식들은 제가 개인적으로 평소에 햇갈리는 수학 공식들로서 이곳에 정리해 두고 필요할 때마다 참조하려고 합니다. 정리 기준 및 방법은 다분히 개인적입니다 (적고 보니 아직은 몇 개 안되네요;;).


원주율 pi = 3.1415926536

rad2deg(x) = x*180/pi

deg2rad(x) = x*pi/180

회전변환(θ) = [cosθ -sinθ; sinθ cosθ]


공학도나 연구개발자를 위한 범용 수학공식 핸드북은 아래 포스팅을 참고하시기 바랍니다.

[수학 이야기] - 수학공식 핸드북 (cheat sheet)


 by 다크 프로그래머

'수학 이야기' 카테고리의 다른 글

축구경기와 수학  (9) 2013.01.28
수학은 정의에서 출발한다  (2) 2013.01.28
가우스와 등차수열  (11) 2013.01.28

향후 포스팅 목록

잡기장 2013. 1. 28. 11:49

앞으로 포스팅할 목록을 적어봅니다. 지금은 시간이 없어서 못 올리지만 시간이 되면 올릴 것들입니다. 제가 개인적으로 나중에 잊어버리지 않기 위해 그때 그때 생각나는 포스팅 주제를 이곳에 정리해 놓고자 합니다 ^^

 

프로그래밍 관련

- 교통 통행량 시뮬레이션 프로그램

- Detector용 ground truth 추출기 => 완료

- 영상 이동체 추적 프로그램 (이동 카메라용)

- 보행자 검출 프로그램 (이동 카메라용) => 완료

- 영상 배경추출 및 이동체 검출 프로그램 (고정 카메라용)

- 차선인식 프로그램

- 카메라 캘리브레이션 툴

- opencv 핸드북 => 완료

 

수학 관련

- 라디안(radian)과 디그리(degree) => 완료

- 영상인식에서 검출율을 측정하는 방법 => 완료

- 각도에도 부피가 있을까 => 완료

- 수학공식 정리 => 진행중

- 분산, 표준편차, Mahalanobis distance => 완료

- 분수의 나눗셈 => 완료

- 적분과 미분 => 완료

- 최소자승법 활용하기 => 완료

- 뉴턴-랩슨 방법 => 완료


영상처리 관련

- RANSAC => 완료

- Haar와 HOG 검출기 학습 방법 => Haar만 완료

- Hamming Distance

- Local Features

- Local Feature Matching & Tracking

- PTAM

- Haar, HOG, LBP 비교

- Optical Flow

- SLIC (super pixel)

- Seeds (super pixel)

- thresholding

- focus & lens

- EM 알고리즘

- bag of word 방법


'잡기장' 카테고리의 다른 글

마법의 가을  (0) 2013.01.28
수학이 싫다  (4) 2013.01.28
블로그 개설하다  (3) 2013.01.28