본문 바로가기

분류 전체보기

C++ string (문자열)의 부분 문자열 추출 (substr) C++ 문자열을 다루다 보면 문자열의 일부를 추출해야 하는 상황이 있습니다. 예를 들어, 파일의 확장자 부분만 추출하고 싶을 때 부분 문자열 추출이 필요합니다. C++ string 클래스는 부분 문자열 추출을 위한 substr()이라는 메소드를 가지고 있습니다. string 클래스의 substr()을 활용하는 방법을 알아보겠습니다. string::substr()은 다음과 같은 형태의 함수입니다. string substr (size_t pos = 0, size_t len = npos) const; 시작 지점(pos)과 길이(len)를 전달받아서 부분 문자열을 리턴합니다. 기본값으로 pos는 0으로 지정되어 있으며 len은 npos가 지정되어 있습니다. len은 문자열의 마지막 문자보다 더 긴 길이가 입력되.. 더보기
리눅스 ZIP 파일 압축 및 해제(zip/unzip) ZIP은 가장 가장 흔하게 볼 수 있는 압축 파일입니다. ZIP은 여러 파일을 하나의 파일로 묶어주고(Archiving) 무손실 압축(Compression)을 지원합니다. 리눅스 환경에서도 ZIP 파일로 압축하거나 압축된 ZIP 파일을 해제해야 하는 상황이 발생합니다. 리눅스 환경에서 ZIP 파일을 다루는 방법을 알아보겠습니다. 1. ZIP 패키지 설치 리눅스는 기본적으로 ZIP이 설치되지 않은 상태일 수 있습니다. 데비안이나 우분투 계열의 리눅스에서는 아래 명령어로 설치를 할 수 있습니다. sudo apt install zip CentOS나 페도라 계열의 리눅스에서는 yum 명령어로 설치가 가능합니다. sudo yum install zip 설치를 완료하면 zip 명령어를 사용할 수 있게 됩니다. 2. .. 더보기
리눅스 IP 주소 확인 방법 리눅스에서 몇 가지 명령어를 통해 IP 주소를 확인할 수 있습니다. 리눅스 명령어를 통해 IP 주소를 출력하는 방법을 알아보겠습니다. 1. ip addr 명령어 기본적으로 사용할 수 있는 명령어는 ip addr입니다. ip addr 도커 등을 설치해서 사용하는 경우 많은 정보가 한 번에 출력되기 때문에 확인이 어려울 수 있습니다. 이럴 때 grep으로 "inet "이 포함된 라인만 출력하면 됩니다. ip addr | grep "inet " 다음과 같이 IP가 표시됩니다. 마지막 부분이 ens나 eth를 포함하는 라인의 IP를 확인하면 됩니다. 위 결과에서는 마지막 부분이 ens33인 라인의 IP인 192.168.1.248이 IP입니다. 2. ifconfig 명령어 ifconfig 역시 리눅스에서 IP나 .. 더보기
파이썬(Python)으로 피보나치(Fibonacci) 수 구하기 피보나치 수는 첫 번째와 두 번째 값이 1이고 다음부터는 그 전의 수와 그 전전의 수를 더하는 방식입니다. 첫 번째 값이 0으로 시작하는 경우도 있으며 다음과 같은 형태의 수열입니다. (0), 1, 1, 2, 3, 5, 8, 13,... 2는 처음 1과 그다음의 1을 합쳐서 계산되며, 3 역시 1과 2의 합으로 계산됩니다. 파이썬으로 피보나치 수를 구하는 다양한 방법을 알아보겠습니다. 1. 반복문으로 구현 가장 기본적으로 사용되는 방법은 반복문으로 구현하는 방법입니다. 이 방법은 직관적이면서 가장 효율적인 방법입니다. 반복문으로 피보나치 수를 구현한 코드는 다음과 같습니다. def fib(n): _curr, _next = 0, 1 for _ in range(n): _curr, _next = _next, .. 더보기
C++ 소수점 올림/반올림/내림 방법 C++에서 소수점을 올림 하거나 내림, 혹은 반올림해야 하는 경우가 있습니다. C++의 cmath 헤더에는 올림/반올림/내림을 위한 ceil, floor, round함수가 존재합니다. C++에서 올림/반올림/내림을 하는 방법을 알아보겠습니다. 1. 올림/반올림/내림 방법 cmath 헤더에는 ceil()과 floor() 함수가 존재합니다. ceil() 함수는 올림을 위한 함수이며 floor() 함수는 내림을 위한 함수입니다. 그리고 C++11에서 반올림을 위한 round() 함수가 추가되었습니다. #include #include #include using namespace std; void main() { float float_num = 2.3; double double_num = 6.7; const ch.. 더보기
리눅스 디렉토리 용량 확인 방법(du) 리눅스의 du 명령어로 각 디렉토리의 사용량을 확인할 수 있습니다. du 명령어를 활용하는 방법을 알아보겠습니다. 1. du 명령어 du 명령어 입력 시 현재 디렉토리의 첫 단계 하위 디렉토리를 포함해서 KB 단위의 크기를 출력합니다. du 다음과 같이 결과가 표시됩니다. du 명령어의 몇 가지 유용한 옵션은 다음과 같습니다. -a 전체 파일 크기 출력 (--all) -h 디렉토리/파일 크기 KB/MB/GB 단위로 표시 (--human-readable) -s 디렉토리의 전체 사용량만 표시 --max-depth=N 최대 N번째 하위 디렉토리까지 표시 ---apparent-size 실제 파일의 용량 표시 -b 바이트 단위 실제 파일의 용량 표시 보통 다음과 같이 -s와 -h 옵션을 함께 사용하고 디렉토리 경.. 더보기
[Java] 자바 LinkedList 사용 방법 LinkedList는 ArrayList와 함께 List를 구체화한 클래스입니다. ArrayList에 대한 내용은 아래의 링크에서 확인 가능합니다. 2020/11/11 - [Programming/Java] - [Java] 자바 ArrayList 사용 방법 [Java] 자바 ArrayList 사용 방법 ArrayList는 자바에서 기본적으로 많이 사용되는 클래스입니다. ArrayList는 자바의 List 인터페이스를 상속받은 여러 클래스 중 하나입니다. 일반 배열과 동일하게 연속된 메모리 공간을 사용하며 인 psychoria.tistory.com ArrayList는 배열을 사용해서 List를 구현한 클래스입니다. ArrayList와 다르게 LinkedList는 각각의 노드를 연결하는 방식을 사용합니다. 아래.. 더보기
블랙프라이데이(Black Friday) 해외 직구 캐시백 라쿠텐 가입 방법 블랙프라이데이(Black Friday)에는 다양한 핫딜들을 만날 수 있습니다. 매력적인 가격으로 다양한 물건들을 구매할 수 있는 좋은 기회입니다. 여기에 구매 금액의 몇 %를 적립해주는 해외직구 캐시백 사이트를 이용하면 더욱 저렴하게 구매가 가능합니다. 아래 링크를 통해 라쿠텐 가입이 가능합니다. rakuten.com/r/PSYCHO1084 Earn Cash Back at stores you 💖 I love getting Cash Back and think you will too! Join for free and get $40 when you spend $40. www.rakuten.com 우측 상단의 Join Now를 누르면 간단하게 가입할 수 있습니다. 구글, 페이스북, 애플 계정이 있는 경우 각각의.. 더보기