분류 전체보기
[C언어] 함수 매개변수 앞에 const?
들어가며 const float PI = 3.14 보통 변하지 않는 상수값을 정의하기 위해 변수의 자료형 앞에 const를 사용합니다. 포스팅을 하기 위해 코딩도장을 살펴보니 const의 위치가 자료형 뒤로 가도 된다고 하더군요. 신기하지만 딱히 활용할 일은 없을 것 같습니다. 컨벤션을 지켜야겠죠! 오늘 알아볼 것은 일반적인 변수에 사용하는 const가 아닙니다. 함수들의 원형을 살펴보면 많은 함수들이 매개변수의 자료형에 const를 사용합니다. 왜 함수의 매개변수의 자료형에 const를 붙이는지 궁금해서 정리하다가 포스팅을 하게 되었습니다. 어떤 함수의 매개변수에 const를 사용했을까? intatoi(const char *nptr); intstrncmp(const char *s1, const char ..
[파이썬/Python] Collections - Deque
들어가며 코딩테스트에 응시할 때 빠르게 찾아볼 수 있도록 따로 정리한 내용입니다. 공부하시기에는 빈약한 내용일 수 있음을 미리 알려드립니다. 공식 문서를 참고할 때에는 대부분의 기업이 이용하고 있는 프로그래머스 코딩테스트 환경에 적용된 python 3.8 버전의 collections을 참고했습니다. 코딩테스트용으로 작성한 글인 만큼 빠르게 훑을 수 있어야 하므로 경어체를 사용하지 않겠습니다. 초기화 방법 1. 기존의 iterable 객체 없이 빈 큐를 초기화 from collections import deque queue = deque() print(d) # deque([]) 2. 기존의 iterable 객체 없이 큐를 구현하되, 구현하면서 임시의 iterable 객체를 이용하여 초기화 from coll..
[Node.js] heroku(헤로쿠) 배포하기
본 글은 2020.09.13에 최종 수정되었습니다. 참고 바랍니다. 본문에 앞서 - 본 글은 Node.js의 express 서버를 heroku를 이용하여 배포하는 방법에 대한 가이드를 제시하는 내용이 담겨 있습니다. 필수적인 내용에 대한 설명은 적으려고 노력했으나, 리눅스 명령어나 express 서버, heroku에 대한 깊은 내용을 다루지는 않습니다. 참고 바랍니다. - 개발 환경은 WSL2를 쓰기 때문에 Linux 운영체제 기반으로 설치를 했습니다. Windows 운영체제를 사용하신다면 도움이 되지 않을 수 있습니다. - heroku 웹 상에서도 배포가 가능하지만, CLI로 하는 것이 더욱 많은 기능을 편리하게 이용할 수 있어서 CLI 기반으로 배포를 진행했습니다. 참고 바랍니다. 개발 환경 - no..
sublime text에서 terminal 이용하는 방법
1. sublmie text 에디터 열기 2. Ctrl + Shift + p (맥의 경우 cmd + Shift + p)를 동시에 눌러 Command Pallete 열기 (정상적으로 작동하지 않는다면 아래의 그림을 참고하여 단축키 없이 열기) 3. command pallete에 install package라고 입력 후, 최상단에 위치한 Package Control: Install Package 클릭 4. package가 설치되었다는 알림이 뜬 후, 다시 command pallete를 열고 sublimeREPL 입력. 이후, 가장 최상단에 보이는 패키지를 클릭 5. (이건 확실하지 않습니다! 어려운 것이 아니라 검증하지 않고 건너가버렸습니다) sublime text를 껐다가 다시 키기 6. 상단 메뉴 중 T..
[linux] zsh에서 pip를 이용한 설치 시 경로(PATH) 에러 해결
문제 - WSL2 기반 Ubuntu에서 제공하는 bash가 아닌, zsh를 이용하고 있습니다. - Ubuntu가 연결되어 있는 VS Code에서 pip3를 이용하여 특정 패키지를 설치하니 다음과 같은 에러가 발생했습니다. WARNING: The script pycodestyle is installed in '/home/monggu/.local/bin' which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location. ... 문제 원인 찾아본 결과, 위 경고 문구 중 빨간색 글씨는 공통된 부분이고 주황색 글씨가 설치한 패키지 및 설..
Windows 10 터미널 커스터마이징 (feat. WSL2, oh-my-zsh)
* 본 글은 nomad coder에서 무료로 제공해주신 개발자를 위한 윈도우 셋업 강의에서 본 내용을 토대로 정리한 것입니다. Windows 10에는 기본적으로 Windows PowerShell이라는 터미널이 존재합니다. 하지만 모두들 알다시피 PowerShell의 비주얼은 아래와 같이 사용하고 싶은 욕구가 단 1도 일어나지 않습니다... :( 이왕 개발할 거면 터미널이라도 보기 좋게 커스터마이징하는 것이 좋지 않을까! 그런 마음으로 터미널을 커스터마이징 해보고자 했습니다. 오늘 포스팅을 따라오기 전에 해주셔야 할 것들이 있습니다! 1. WSL2 설치하기 -> 리눅스 쉘을 기반으로 커스터마이징 할 거라서 WSL2를 설치하지 않았다면 이전에 작성했던 포스팅을 참고해주세요! 2. Microsoft Store..
open, read, close 함수 정리
open 헤더 : fcntl.h open은 두 가지 형태의 시스템 콜을 가지고 있다. 형태는 아래와 같다. 참고로 rush 및 bsq에서는 첫 번째 시스템 콜을 이용할 것이다. int open(const char *pathname, int flags); int open(const char *pathname, int flag, mode_t mode); pathname 파일의 경로와 이름으로, 절대경로의 파일명과 상대경로의 파일명 모두 허용된다. rush와 bsq에서는 간단하게 파일명으로 지정하고 읽고자 하는 파일을 Makefile과 같은 경로에 두면 된다. flags 파일을 어떻게 열지를 결정하는 플래그로서, 읽기 전용으로 열 때는 O_RDONLY, 쓰기 전용으로 열 때는 O_WRONLY, 읽기 쓰기로 열..
구조체 정리
1. 구조체 목적 구조체는 관련 정보를 하나의 의미로 묶을 때 사용한다. 2. 구조체 사용 방법 (기본) (1) 구조체 정의 및 변수 선언 구조체는 아래처럼 struct 키워드로 정의한다. struct [구조체이름] { 자료형 멤버이름1; 자료형 멤버이름2; ... }; ////////////////////// 예시 //////////////////////// struct member {// 구조체 이름 : member charnumber[20];// 구조체 멤버 1 charname[20];// 구조체 멤버 2 intage;// 구조체 멤버 3 }; 위처럼 정의한 구조체는 이후 int나 char형, unsigned int 등의 자료형처럼 struct [구조체이름] 형태로 자료형 자리에 붙여준다. 구조체를..