목록전체 글 (139)
오답노트
iterm2에서 python 커맨드가 먹히지 않는 문제 which python3 # 해당 명령어 나온 주소 확인 echo "alias python=$(which python3)" >> ~/.zshrc
맥북에서 docker daemon 재설정하는 방법은 ~/.docker/daemon.json 파일을 수동으로 제거한 뒤 docker desktop 을 재실행하는 것이다
test_dict = {'1': 0, '2': 1, '3': 4} for k, v in list(test_dict.items()): if k == '2': del test_dict[k] print(test_dict) # {'1': 0, '3': 4}
선언 된 배열 및 문자열이 지정 된 크기를 넘어선 경우에 발생한다. char String[]; 을 char String[100]; 로 바꿔주어 해결했다.
void InitMembers(char * ID, int fuel) { strcpy(gamerID, ID); fuelGauge = fuel; } int main(void) { InitMemebers("run99", 100); };위와 같은 코드를 작성했을 때, 제목과 같은 컴파일 에러가 발생했다. 검색해보니 "run99" 가 상수처리가 돼서 const char * 의 데이터 형식이 되었고, 따라서 char * 를 매개변수로 받는 함수와 호환 되지 않았던 것이었다. 현재 책을 보면서 공부 중인데 책의 예제에서는 char * ID 로 사용해도 별 문제가 없었는데 왜 그런가해서 좀 더 찾아보니 단순 컴파일러의 버전 차이 때문에 일어나는 일이라고 했다. 따라서 해당 예제를 사용하기 위해서는 코드를 // 1. v..
Call-by-Value: 값을 인자로 전달하는 함수의 호출 방식 Call-by-Reference: 주소값을 인자로 전달하는 함수의 호출 방식 // Call-by-Value int Adder(int num1, int num2) { return num1+num2; }Call-by-Value 의 형태로 정의 된 함수의 내부에서는 함수 외부에 선언 된 변수에 접근이 불가능하다. void SwapByValue(int num1, int num2) { int temp = num1; num1 = num2; num2 = temp; }즉, 위와 같은 함수의 형태로는 인자로 받은 두 변수간의 값을 변경할 수 없다. 두 변수간의 값을 변경하는 것처럼 함수 내부에서 외부에 선언 된 변수에 접근하고자 할 때는 void Swap..
혼자 cpp 의 namespace 부분을 공부하던 중 헤더파일, 소스파일을 불러오는 방식에 대해 헷갈리는 게 생겨 정리해둔다. // namespace.h namespace BestComImpl { void SimpleFunc(void); } namespace ProComImpl { void SimpleFunc(void); } 다른 namespace 내 같은 이름의 함수들을 선언한다. // NoMain.cpp #include #include "namespace.h" void BestComImpl::SimpleFunc(void) { std::cout
import multiprocessing as mp manager = mp.Manager() value_list = manager.list() value_dict = manager.dict() process_list = [] 멀티프로세싱에 필요한 패키지를 임포트하고 값들을 저장 할 리스트와 딕셔너리를 선언한다. multiprocessing.Manager() 모듈 내에 list 와 dict 모듈로 선언한다. for val in iter_list: p = mp.Process( name = "multi_process", target = function. args = (val, value_list, value_dict, ) ) process_list.append(p) p.start() for p in p_lis..