본문 바로가기

Programming

C++ string을 int로 변경하는 방법 프로그래밍을 하다 보면 다양한 타입들을 변환해야 하는 상황이 생깁니다. C++에서 int나 long 타입을 string으로 변환하는 것은 아래에서 확인 가능합니다. 2019/11/15 - [Programming/C&CPP] - C++ int를 string으로 변경하는 방법 C++ int를 string으로 변경하는 방법 C++의 string 클래스는 int나 float, double 같은 타입을 변환하는 메소드를 가지고 있지 않습니다. 다만 표준인 stringstream이나 boost의 lexical_cast를 활용해서 변환이 가능합니다. 아래 링크를 통해 int 등.. psychoria.tistory.com 반대로 string을 int로 변환하는 방법들을 소개합니다. 1. std::stringstream.. 더보기
C++ int를 string으로 변경하는 방법 C++의 string 클래스는 int나 float, double 같은 타입을 변환하는 메소드를 가지고 있지 않습니다. 다만 표준인 stringstream이나 boost의 lexical_cast를 활용해서 변환이 가능합니다. 이 방법 외에도 C++11에서 추가된 std::to_string()을 통해 변환이 가능합니다. 반대로 string을 int로 변환 역시 지원하며 아래 링크에서 확인 가능합니다. 2019/11/18 - [Programming/C&CPP] - C++ string을 int로 변경하는 방법 C++ string을 int로 변경하는 방법 프로그래밍을 하다 보면 다양한 타입들을 변환해야 하는 상황이 생깁니다. C++에서 int나 long 타입을 string으로 변환하는 것은 아래에서 확인 가능합니.. 더보기
파이썬에서 JSON 데이터 형식 처리 파이썬은 기본적으로 JSON 데이터를 처리할 수 있는 json 모듈이 포함되어 있습니다. json 모듈은 Python 타입을 JSON 형태의 문자열로 바꾸거나 그 반대의 기능을 제공합니다. 1. JSON 형태 문자열과 파일 읽기 JSON 형태의 문자열을 읽기 위해 loads()를 사용합니다. import json data = '{"title": "Book1", "ISBN": "12345", "author": [{"name": "autho1", "age": 30}, {"name": "autho2", "age": 25}]}' json_data = json.loads(data) print(json_data['title']) print(json_data['ISBN']) for author in json_data.. 더보기
Sourcetree에 외부 Diff 툴 설정 Sourcetree를 설치한 이후에 외부 Diff 툴을 설정하면 쉽게 수정 내역을 확인할 수 있습니다.소스 코드의 수정 내역을 확인해서 실수를 미리 찾아내는데 도움이 될 수 있습니다.Diff 툴 설정을 위해 도구(Tools) -> 옵션(Options) 메뉴를 실행합니다.비교(Diff) 탭으로 이동하면 외부 비교 / 병합 설정이 가능합니다.외부 비교 도구와 병합 도구에서 커스텀을 선택하고 Diff 명령어와 변수를 입력하면 됩니다.현재는 Meld라는 Diff 툴을 사용하고 있는데 각각 설정 값은 다음과 같습니다.Meld 설정 Diff 명령어 변수 외부 비교 도구 Meld 실행파일 경로 -n $LOCAL $REMOTE 병합 도구 Meld 실행파일 경로 -n $LOCAL $BASE $REMOTE --auto-m.. 더보기
C++ std::string 토큰(Token) 분리 방법(Tokenize) 한 문자열에 데이터가 공백 등의 특정 문자를 기준으로 저장되는 경우가 있습니다.CSV 파일 형식의 경우 데이터가 ,(Comma)로 구분됩니다.각각의 필드를 가져오기 위해서 쉼표를 기준으로 끊어서 문자열을 가져와야 합니다.이런 과정을 Tokenize라고 하며 대부분의 프로그래밍에서 활용됩니다. C에서는 char 배열을 strtok 함수로 특정 문자를 기준으로 토큰 추출이 가능합니다.C#과 MFC의 Tokenize 방법은 아래 링크에서 확인 가능합니다.2015/06/22 - [Programming/Win32&MFC&COM] - CString 토큰(Token)으로 분리시키기(AfxExtractSubString)2016/01/23 - [Programming/CSharp] - String.Split으로 토큰 단위.. 더보기
자바(Java) JDK 설치 및 환경 변수 설정 Java 개발을 시작하려면 먼저 JDK를 설치해야 합니다.JDK는 아래 링크에서 다운로드 가능합니다.https://www.oracle.com/technetwork/java/javase/downloads/index.html최신 JDK 버전의 다운로드 버튼을 클릭합니다.Java SE Development Kit의 OS에 맞는 설치 파일을 다운로드 받으면 됩니다.윈도우 64비트의 경우 Windows x64의 파일을 선택해서 다운로드하면 됩니다.Accept License Agreement 부분에 체크해야 다운로드가 가능합니다. 설치 파일을 실행해서 설치를 진행합니다.Next 버튼을 클릭하고 설치를 계속합니다.기본으로 선택된 기능들을 확인하고 Next 버튼을 클릭합니다.오라클에서 2019년 1월부터 Java를 구.. 더보기
C++ 홀수/짝수(홀짝) 구분 방법 프로그래밍 언어에서 정수의 홀수/짝수 구분은 비교적 간단한 주제 중 하나입니다.간단한 주제이면서도 상당히 활용도가 높습니다.C++에서 간단하게 정수의 홀짝을 구분하는 방법은 다음과 같습니다. 1. % 연산자(Modulus operator) 먼저 % 연산자로 사칙연산 급으로 취급되는 가장 기본적인 연산자입니다.Modulus operator로 불리며 정수 나눗셈의 몫이 아닌 나머지 값을 리턴합니다.정수를 2로 나눴을 때 나머지가 0이기 때문에 이것을 기준으로 홀수/짝수 구분이 가능합니다. 2. & 연산자(Bitwise AND operator)비트 연산자 중 하나인 & 연산자를 사용하는 방법 역시 가능합니다.짝수 정수의 가장 우측에 있는 비트가 0인 점을 이용하는 방법입니다.정수와 1을 & 연산자로 연산하면 .. 더보기
C++ 스택을 사용한 괄호 짝 맞추기(Balanced brackets) 괄호 짝 맞추기(Balanced brackets)는 여는 괄호와 닫는 괄호의 짝이 맞는지 확인하는 문제입니다. 가장 나중에 열렸던 괄호 타입이 가장 먼저 닫혀야 됩니다. 이런 특성은 스택(Stack) 자료형을 활용하면 쉽게 구현이 가능합니다. 여는 괄호는 모두 스택에 넣고 닫는 괄호가 나올 때 스택의 최상단(Top)에 위치한 여는 괄호와 비교합니다. 그리고 닫는 괄호가 나왔을 때 스택이 비어 있으면 잘못된 짝으로 구성된 것입니다. 모든 문자를 비교한 이후에 스택이 깔끔하게 비었으면 완전한 괄호 짝이 맞는 문자열이 됩니다. 전체적인 코드는 다음과 같습니다. 30줄 남짓의 코드로 쉽게 구현이 가능합니다. 추가로 브라켓을 추가해야 하는 경우 map 타입의 pairs에 여는 괄호와 닫는 괄호 쌍을 입력해주면 됩.. 더보기