프로그래밍 언어

간단한 swap 함수를 작성하였습니다. void fnSwap(int& first, int& second) { int temp = first; first = second; second = temp; } 사용은 별도로 참조형을 선언한다든지 할 필요 없이, 다음과 같이 변수를 직접 파라미터로 사용합니다. int a{10}, b{20}; fnSwap(a, b); 참조형을 입력 인자로 넣을 때도 마찬가지입니다. int a{10}, b{20}; int &ra{a}, &rb{b}; fnSwap(ra, rb); 즉, 참조형으로 선언된 파라미터는 원본을 전달하라는 의미로 컴파일러가 이해를 하고 있다고 알고 있으면 됩니다. 따라서 포인터 변수를 이용하여 위 함수를 호출할 경우라도 어렵게 생각하지 않고 우리가 적용하려고 하..
개요 Axios를 이용하여 REST API 를 사용할 경우, IDE 의 자동완성 기능의 도움을 받고자 Axios 로 수신한 응답 데이터의 Type 을 지정하고 싶습니다. 본문 Axios 에는 사전에 정의된 응답에 대한 Type 이 다음과 같이 정의가 되어 있습니다. export interface AxiosResponse { data: T; status: number; statusText: string; headers: Record; config: AxiosRequestConfig; request?: any; } 따라서 아래와 같이 설정을 하면 응답에 대해 형식을 지정할 수 있습니다. 예시코드 (우편번호 응답) interface resEPostAPI { NewAddressListResponse : { cm..
개요 canonicalized 된 절대 경로명을 돌려주는 함수 사용 예시 // 프로그램의 실행 경로를 출력합니다. // test @ ubuntu 20.04 #include #include int main(int argc, char** argv) { char caBuf[PATH_MAX]; realpath(argv[0], caBuf); printf("%s\n", caBuf); return 0; }
개요 printf와 같이 서식을 사용하여 문자열을 초기화 하고자 합니다. 본문 코드 // myString.cpp #include #include #include #include class myString : public std::string { public: myString(const std::string fmt, ...); }; myString::myString(const std::string fmt, ...) { va_list args, argtmp; va_start(args, fmt); va_copy(argtmp, args); int len = vsnprintf(nullptr, 0, fmt.c_str(), argtmp); char *buf = new char[len]; if (buf!=nullptr..
개요 Python의 requests 패키지와 IFTTT를 이용하여 간단히 비트코인 가격 알리미 서비스를 만들어 보도록 하겠습니다. 비트코인 가격은 빗썸에서 제공하는 데이터를 사용합니다. 프로젝트 준비 프로젝트에서 사용할 라이브러리를 설치합니다. $ pip install requests # We only need the requests package 비트코인 가격 조회하기 우선 Python 콘솔에서 빗썸에서 제공하는 API를 이용해 최신 가격을 조회해보겠습니다. requests 모듈을 import 한 후, 비썸 API의 주소 값이 담긴 bitcoin_api_url 변수를 정의합니다. 다음은 requests.get() 함수를 사용하여 해당 주소로 HTTP GET 요청을 전송한 후, 응답을 저장합니다. API..
개요 Python 설치 시 함께 제공되는 Python 표준 라이브러리는 Python으로 수행할 수 있는 가장 일반적인 작업을 위한 모듈이 포함되어 있습니다. 하지만 이 외에도 세상에는 Python을 이용하여 할 수 있는 다양한 작업이 많이 있습니다. 이들이 모두 표준 라이브러리로 제공되는 것은 아닙니다. 때문에 외부 모듈(패키지)의 활약이 필요합니다. 이번 포스팅에서는 python에서 외부 모듈(패키지)을 설치하는 방법을 확인하겠습니다. PyPI와 PIP 개발자가 다른사람들에게 유용하다고 생각하는 Python 모듈을 작성하면 PyPI(Python Package Index)라고 하는 Python 모듈 저장소에 모듈을 게시합니다. 이곳을 검색하면 우리가 필요한 모듈을 찾을 수 있습니다. 여기에는 주제, 개발..
개요 파이썬은 문자열 데이터 유형과 관련된 여러 내장 함수(built-in function)를 제공합니다. 이들 내장 함수를 사용하면 문자열을 쉽게 수정하고 조작할 수 있습니다. 이번 포스트에서는 파이썬에서 문자열로 작업하는 데 사용할 수 있는 여러 함수를 살펴보겠습니다. ※ 파이썬에서 제공하는 문자열의 내장 함수는 종류가 많기 때문에 지속적으로 추가하도록 하겠습니다. 문자열을 대문자 또는 소문자로 변환 str.upper()과 str.lower() 함수는 원본 문자열의 모든 문자를 대문자 또는 소문자로 변환하여 반환합니다. 문자열은 변경할 수 없는 데이터형(immutable data type)이므로 반환된 문자열은 새로운 문자열입니다. 변환 시 문자(알파벳)가 아닌 경우는 변경 없이 반환됩니다. 문자열 ..
개요 문자열은 종종 텍스트로 구성되기 때문에 문장부호, 줄 바꿈, 들여 쓰기를 통해 문자열을 사람이 읽기 쉽도록 제어하고 싶을 때가 많습니다. 이번 포스트에서는 파이썬(Python)에서 문자열의 서식을 제어하는 방법을 살펴보겠습니다. 문자열 리터럴 먼저 문자열 리터럴과 문자열 값이 무엇인지 알아보겠습니다. 문자열 리터럴은 따옴표를 포함하여 컴퓨터 프로그램의 소스코드에 표시됩니다. 문자열 값은 print() 함수를 호출하고 프로그램을 실행할 때 표시되는 것입니다. print("Hello, World!") 예를 들어 위 "Hello, World!" 프로그램에서 문자열 리터럴은 "Hello, World!"이며, 문자열 값은 따옴표가 없는 Hello, World!입니다. 다시 말해 문자열 값은 파이썬 프로그램을..
쓴웃음
'프로그래밍 언어' 카테고리의 글 목록