IT 269

[Linux Mint 17] 다음 클라우드 설치하기

※다음 클라우드 서비스가 2015.6월부로 종료되어 이제 과거의 추억의 글이 되었습니다. 별 어려운 내용은 없고 기록용으로 남깁니다. 1. 다음 클라우드 패키지를 내려받습니다. http://cloud.daum.net에 접속하면 처음에는 어디서 받아야 하는지 어리둥절할 수 있습니다. 페이지 왼쪽 맨 아래를 보시면 '환경 설정' '공유 현황' '스마트업로더설치' 'PC싱크프로그램설치' 라는 링크를 볼 수 있습니다. 여기에서 'PC 싱크프로그램설치'를 선택하시면 '1 모바일앱 설치하기' 라는 내용이 보이는데 PC에다 설치할 것이기 때문에 스크롤을 더 내리면 '2 PC싱크 프로그램 설치하기' 라는 내용을 볼 수 있습니다. 'Linux용 다운로드' 드롭 다운 메뉴를 선택하면 'Ubuntu용' 'Fedora용' 이..

IT/package 2014.09.22

[C++]unsigned char 배열을 std::string 변수에 넣기

char 배열은 쉽게 string에 넣을 수 있습니다. char array[50]; string str_array = array; 바이트 배열을 다룰 때 자주 쓰는 unsigned char는 호락호락하게 넣을 수 없습니다. unsigned char uarray[50]; string str_array = uarray; g++ -std=gnu++11 po13.cpp po13.cpp: In function ‘int main()’: po13.cpp:127:57: error: invalid conversion from ‘unsigned char*’ to ‘const char*’ [-fpermissive] 위와 같이 'unsigned char*' 형에서 'const char*' 형으로의 invalid convers..

IT 2014.09.16

[git] 수정된 소스의 일부분만 추가 및 커밋하기

수정된 소스가 특정 위치마다 커밋의 내용이 크게 다른데 소스 수정하다 보면 한꺼번에 여러 곳을 고치게 되는 경우가 자주 있습니다. 이럴 때 일일이 이 부분은 버그 커밋 내용, 기능 추가 내용, 소스 정리 내용 등으로 구분해서 커밋을 할 수 있다면 소스 수정을 겁내지 않고 할 수 있습니다. git에서는 심지어 하나의 파일도 사용자가 지정해서 원하는 부분만 커밋할 수 있는 기능을 제공합니다. git add -p 또는 git add --patch 명령을 내리면 'Stage this hunk [y,n,q,a,d,/,j,J,g,e,?]?'라는 질문이 뜨면서 입력을 기다리게 됩니다.뭔가 복잡해 보이는데 간단하게 맨 앞의 y,n은 현재 보이는 코드 덩어리(chunk)를 추가 하겠습니다(y) 안하겠습니다(n)를 지정하..

IT/VCS 2014.09.11

[git]실수로 지운 커밋(commit) 살리기

기록용으로 남겨둡니다. 참고 사이트에 자세히 나와 있으므로 꼭 참고하시기 바랍니다. 0. 현재 저장소가 지저분(?)하지 않아야 합니다. git status 명령으로 확인해봅니다. git status nothing to commit, working directory clean 이런 결과이면 다음으로 넘어가면 되지만 아직 수정 중인게 있는데 어쩌란 말야 하는 상황이라면 깔끔하게 임시 보관함(stash)에다 저장해줍니다. git stash save "imsi" Saved working directory and index state On master: imsi HEAD is now at a104848 [printf-define] Add simple example imsi 내용으로 자세한(!) 설명을 남기고 저장..

IT/VCS 2014.09.02

[GDB] handle 명령

gdb 프로세스에 발생되는 신호(signal)를 다루기 위한 기능입니다.handle 신호 동작명령 형태는 위와 같습니다. 예를 들면 SIGUSR1 신호가 발생하면 기본 동작으로 멈추는데 멈추지 않고 계속 진행하게 하려면 다음과 같이 입력합니다.handle SIGUSR1 nostop동작에는 stop, nostop, print, noprint, pass, nopass, ignore, noignore가 올 수 있습니다.크게 stop, print, pass, ignore입니다.stop은 해당 신호를 받았을 때 프로그램 진행을 멈추고 디버거인 gdb 프롬프트로 돌아올 것인지를 지정합니다.print는 해당 신호가 발생했음을 간단히 출력해줍니다.pass는 해당 신호를 프로그램에 전달할지를 지정합니다.ignore는 해..

IT/gcc 2014.08.13

Static structure in class 삽질 결과..

컴파일은 g++ static-structure-in-class{,-main}.cpp 명령을 내리면 a.out이 나옵니다.삽질하다가 간신히 성공한거라 자세한 내용을 모르고 되는 것만 적어놔요.. has a previous declaration as 오류나 does not name a type static 오류 invalid use of qualified-name structure 오류 undefined reference to 오류 등.. C++과 구조체를 정확히 모르니 몸이 무려 하루하고 반나절을 고생하네요.. 헤더 파일 // file:: static-structure-in-class.h struct t_struct { int a; int b; }; enum INDEX_TYPE {FIRST, TMP1 = ..

IT 2014.08.13

[vim] 특정 줄, 또는 칸 지정하기

vim에서 특정 줄이나 칸을 지정할 수 있습니다. \%줄번호l 은 특정 줄번호에 해당하는 줄을 참조하라는 뜻이고, \%칸번호c 는 특정 칸번호의 위치를 참조하라는 뜻입니다. 이를 활용하는 예제입니다. 문서 전체에서 enum을 찾아 Iloveu로 바꿀 때 7번 줄과 10번 줄에만 적용하고 싶은 경우에 다음처럼 명령합니다. %s/\(\%7l\|\%10l\)enum/Iloveu/ 43번째 칸과 46번째 칸 사이에서 한 글자('.')를 찾으라는 명령입니다. hlsearch 등이 지정되어 있으면 44번째 칸이 강조되어 보입니다. /\%>43c.\%72v.* 참조: http://stackoverflow.com/questions/17319557/search-and-replace-in-vim-in-specific-li..

IT/editor & ide 2014.08.13

iONE Scorpius M10 키보드 한영키 한자키 문제 해결!!

지금까지 이런 저런 글을 보고 관련 파일을 받아 테스트를 해봤는데 정상적으로 적용되는 부분이 없거나 너무 설명이 어렵게 되어 있거나 하는 글들만 있었습니다. 성의없이생긴님 블로그를 방문하고 나서 딸랑 reg 파일만 있었는데 혹시나 하는 마음으로 레지스트리 내용 확인한 다음 실행하고 나서 재부팅해보니까 정상적으로 잘 적용되네요.검색어를 잘 던저야지 관련 내용을 찾지 잘 찾아지지 않아서 해당 내용을 포스팅합니다. 다음 파일을 만들어서 .reg 파일로 저장해서 더블 클릭하면 적용할거냐고 물어보는데 적용하고 재부팅합니다.Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameter..

IT 2014.07.26

[C++] std::istream::getline

#include // 또는 istream istream& getline (char *s, streamsize n); istream& getline (char *s, streamsize n, char delim); 포맷이 지정되지 않은 입력 스트림에서 길이가 최대 n만큼 문자열을 추출해서 s에 C 문자열로 저장합니다. 구분자인 세번째 인수 delim을 생략하면 개행 문자인 '\n'으로 처리해서 한 줄을 읽어들이는 기능을 합니다. delim은 입력에서 추출되지만 s에는 저장되지 않습니다. 길이 n이나 구분자 delim에 적용되지 않았는데 파일 끝(EOF)에 도달하면 eofbit 플래그가 설정되고 이 값은 eof() 메소드로 확인할 수 있습니다. 글자를 추출할 수 없거나 구분자를 찾을 수 없는 경우에는 fai..

IT 2014.07.24