반응형
프로그래밍 노트/C&C++2021. 1. 12. 22:56C++ 예제 - 문자열을 일정 길이로 자르기

문자열을 일정 길이로 자르는 C++ 코드를 작성해보았습니다. 2021. 1. 12 - 최초작성 #include #include #include std::vector block_string(std::string input, int want_block_length) { std::vector ret; int length; std::string str = input; while (str.length() > want_block_length) { std::string msg = str.substr(0, want_block_length); std::string rest = str.substr(want_block_length); // std::cout

프로그래밍 노트/C&C++2021. 1. 1. 19:18C++ shared_ptr 예제, 사용방법

C++의 shared_ptr 예제 및 사용방법을 다루고 있습니다. 아직 C++에 익숙하지 못해서 제 맘대로 바꿔보면서 감을 익히는 중입니다. 2020. 01. 01. 최초 작성 std::shared_ptr 이란 shared_ptr은 c++ 11이 제공하는 스마트 포인터 클래스 중 하나입니다. 포인터를 더 이상 사용하지 않는 경우 메모리를 자동으로 해제해줍니다. 잘 사용하면 메모리 해제를 제때 안해 발생하는 메모리 릭(memory leak) 문제를 방지할 수 있습니다. shared_ptr 객체 생성 shared_ptr 객체 생성시 바로 메모리를 가리키는 포인터를 연결하는 방법은 아래 예제에 보이는 2가지가 있습니다. make_shared를 사용하는 것을 권장합니다. shared_ptr을 위한 힙 메모리에 ..

프로그래밍 노트/C&C++2020. 12. 11. 22:31C++ localtime 사용하여 현재 날짜, 시간 출력하기 (Windows/Linux)

C++에서 현재 날짜, 시간을 출력하는 예제입니다. 2020. 12. 11 최초작성 최근 Visual Studio 2019를 업데이트한 후, 콘솔 프로젝트 만들시 sprintf_s 대신에 sprintf 사용해도 에러나지 않도록 하는 옵션 체크해제 항목이 사라졌네요. 그래서 Visual Studio에서 테스트할 경우 _MSC_VER이 정의되어 있어서 sprintf_s를 사용하도록 했습니다. 윈도우에서는 _localtime64_s를 사용하도록 했는데 리눅스에서 사용하는 localtime_r과 달리 thread safe한지 확인을 아직 못했습니다. C++에서 현재 날짜, 시간을 출력하는 예제입니다. 2020. 12. 11 최초작성 최근 Visual Studio 2019를 업데이트한 후, 콘솔 프로젝트 만들시 ..

C++ - 터미널의 특정 위치에 문자열 출력하기
프로그래밍 노트/C&C++2020. 12. 10. 22:29C++ - 터미널의 특정 위치에 문자열 출력하기

터미널의 특정 위치에 문자열을 출력하는 방법을 다루고 있습니다. 2020. 12. 10 최초작성 #include #include #include void printToCoordinates(int y, int x, const char* format, ...) { va_list args; va_start(args, format); printf("\033[%d;%dH", y, x); vprintf(format, args); va_end(args); fflush(stdout); } int main() { #ifdef _MSC_VER system("cls"); #else system("clear"); #endif for ( int i=0; i

Visual Studio 2019에서 C/C++를 위한 콘솔(console) 프로젝트 생성하는 방법
개발 환경/Visual Studio2019. 4. 20. 09:54Visual Studio 2019에서 C/C++를 위한 콘솔(console) 프로젝트 생성하는 방법

Visual Studio 2019에서 C/C++를 위한 콘솔 프로젝트를 만드는 방법을 설명합니다.

개발 환경/Visual Studio2019. 4. 18. 13:30C/C++, Win32 API, MFC 개발을 위해 Visual Studio Community 2019 설치하는 방법

C/C++, Win32 API, MFC 개발을 위해 Visual Studio Community 2019를 설치하는 방법을 다룹니다. 관련 포스트 C/C++, Win32 API, MFC 개발을 위해 Visual Studio Community 2022 설치하는 방법 https://webnautes.tistory.com/1681

OpenCV/OpenCV 강좌2019. 1. 28. 16:31OpenCV에서 1비트 이미지 저장하기

imwrite 함수로 저장하면 바이너리 이미지라도 그레이스케일(8비트 1채널) 이미지로 저장됩니다. imwrite 사용시 IMWRITE_PNG_BILEVEL 옵션을 추가해주면 1비트 1채널 이미지로 저장할 수 있습니다. 1비트 이기 때문에 0과 1 두가지만 표현가능합니다. png 확장자를 가지는 이미지만 가능합니다. 다음은 Python과 C++구현한 코드입니다. Python import cv2 as cv img_color = cv.imread('test.png', cv.IMREAD_COLOR) img_gray = cv.cvtColor(img_color, cv.COLOR_BGR2GRAY) ret, img_binary = cv.threshold(img_gray, 150, 255, cv.THRESH_BINAR..

OpenCV/OpenCV 강좌2018. 11. 15. 08:00OpenCV 강좌 - Canny Edge Detector 이론 및 사용 예제

Canny Edge Detector를 구현하기 위해 필요한 이론과 OpenCV에서 제공하는 Canny 함수 사용방법을 다룹니다. 캐니 에지 디텍터(Canny Edge Detector) 이론 2. OpenCV Canny 함수 2-1. Python 기본 예제 트랙바 사용 예제 2-2. C++ 기본 예제 트랙바 사용 예제 3. 참고 2018. 11. 14. 최초 작성. 1. 캐니 에지 디텍터(Canny Edge Detector) 이론 2. OpenCV Canny 함수OpenCV에서는 하나의 함수 Canny만 호출하면 캐니 에지를 얻을 수 있습니다. 2-1. Python 기본 예제 img_canny = cv2.Canny(image, threshold1, threshold2, edges=None, aperture..

개발 환경/Visual Studio2018. 7. 9. 13:54Visual Studio 2017에서 C/C++를 위한 콘솔 프로젝트 생성하는 방법

Visual Studio 2017에서 C/C++를 위한 콘솔 프로젝트를 작성하는 방법을 설명합니다. Visual Studio 2017 설치하는 방법은 다음 포스팅을 참고하세요 C++, Win32 API, MFC 개발을 위해 Visual Studio Community 2017 설치하는 방법http://webnautes.tistory.com/1131 2018. 7. 9 - 최초작성 1. 메뉴에서 파일 > 새로 만들기 > 프로젝트를 선택합니다. 2. 왼쪽 항목에서 Visual C++ > Windows 데스크톱을 선택하면 중앙에 보이는 항목에서 Windows 데스크톱 마법사를 선택합니다. Windows 콘솔 응용프로그램을 선택하면 stdafx.h 등의 파일이 프로젝트에 추가된 상태라서 빈 프로젝트가 필요한 경우..

개발 환경/Visual Studio2018. 5. 31. 16:42C++, Win32 API, MFC 개발을 위해 Visual Studio Community 2017 설치하는 방법

C/C++ 및 Win32&MFC 프로그래밍을 위해 Visual Studio Community 2017를 설치하는 방법을 다루고 있습니다. 관련 포스트 C/C++, Win32 API, MFC 개발을 위해 Visual Studio Community 2022 설치하는 방법 https://webnautes.tistory.com/1681 테스트 환경은 다음과 같습니다. Windows 10 Pro 64bit 다음 순서로 설명합니다. 1. 비주얼 스튜디오 설치 2. 비주얼 스튜디오 초기 설정 3. 비주얼 스튜디오 언어 변경 4. 비주얼 스튜디오 구성요소 변경 5. 비주얼 스튜디오 완전히 제거 본 포스팅에서는 비주얼 스튜디오 설치 방법만 설명하고 있습니다. C/C++, Win32 API, MFC 프로젝트 생성 방법은 ..

반응형
image