프로그래밍 4

[C++] 현재 날짜와 현재 시각 출력하기

C++에서 오늘 날짜와 현재 시각을 출력하는 방법에 대해 정리해보겠습니다. 우선 C언어에서 사용하던 헤더 파일은 헤더 파일을 이용하면 똑같이 사용할 수 있습니다. 그러고 보니 헤더 파일을 그대로 사용하면 될 것 같은데, 굳이 헤더 파일을 새롭게 만든 이유가 궁금하네요. 아래 코드는 현재 날짜와 시각 정보를 출력하는 코드입니다. #include #include int main() { struct tm curr_tm; time_t curr_time = time(nullptr); localtime_r(&curr_time, &curr_tm); int curr_year = curr_tm.tm_year + 1900; int curr_month = curr_tm.tm_mon + 1; int curr_day = cur..

IT/C++ 2020.01.30

[C++] Thread 정리하기

얼마 전에 C++로 구현해야 하는 작업이 있었습니다. 구현할 때 Thread를 이용해야해서, 라이브러리를 이용했는데, 해당 내용을 정리하고자 합니다. "A thread of execution is a sequence of instructions that can be executed concurrently with other such sequences in multithreading environments, while sharing a same address space." - cplusplus.com "스레드는 우선, thread를 이용하기 위해서는 헤더를 include 해야 합니다. 아래는 cplusplus.com에서 소개하는 예제입니다. #include #include void foo() { // do..

IT/C++ 2020.01.15

[GCC/G++] vi 또는 vim에서 원하는 줄번호로 한번에 이동하는 방법

리눅스나 맥에서 vi 또는 vim을 이용하여 코딩을 하다보면,컴파일 오류 시, 이렇게 친절하게 에러를 띄워준다.에러가 난 줄번호는 43번으로, 비교적 스크롤을 이용해서 찾아가기 쉽다. 하지만, 줄번호가 12499번이라면?줄번호만 찾아가는 것도 상당한 노력을 요할 것이다. 이렇게 불편한 줄번호 찾아가기를 한 번에 해결해주는 방법이 있다. 1. Vi 또는 Vim으로 텍스트 파일을 연다.2. ESC를 눌러 표준 모드로 진입한다.3. 그 상태에서 원하는 줄 번호를 입력한다. (화면에는 번호가 출력되지 않는다.)4. 입력이 다 끝난 후, Shift + G를 입력한다. (대문자 G를 입력한다고 생각하자.) "원하는 줄번호 " "Shift + G" 사진으로는 스크롤로 이동한 건지, 단축키로 이동한 건지 구분이 안되므..

IT/Coding Tip 2016.10.20

[GCC/G++] vi 또는 vim에서 전체 코드 자동 정렬하는 단축키

리눅스나 맥에서 vi 또는 vim을 이용하여 코딩을 하다보면, 오픈 소스를 이용하기 위해 복사 붙여넣기를 할 때, 코드가 제멋대로 들여쓰기가 되어 줄이 엉망이 되는 경우가 종종 있다. 예를 들어,퀵소트를 수행하는 함수를 복사 붙여넣기 했을 때, main()처럼 동등한 위치에 있어야 할 코드가 들여쓰기 되는 현상이 발생한다. 이럴 때, ESC를 눌러 표준 모드로 전환한 후, "gg=G" gg=G 를 순서대로 입력하면, 위와 같이 깔끔하게 정렬된 모습을 볼 수 있다. 하단의 46 Lines Indented 의 문구를 통해 총 46줄의 코드가 정렬된 것을 알 수 있다. 만일 부분적으로만 자동 정렬을 하고 싶다면, 표준 모드에서 V키를 통해 원하는 부분만 블럭 처리를 한 후, \= 키를 눌러 자동 정렬을 수행할..

IT/Coding Tip 2016.09.05