본문 바로가기

분류 전체보기

(62)
VS Code CMake를 활용한 C++ 환경 셋팅 따라하기! cmake 설치 (설치 창에서 Add CMake to the system PATH for all users 체크!) ninja build 설치 및 환경 변수(시스템 환경 변수->Path) ninja 경로로 설정 https://github.com/mstorsjo/llvm-mingw 다운로드(영상에서는 ucrt-x86_64 받음) 및 환경변수 (다운폴더)/bin으로 설정(컴파일러 쓰는 거 있으면 생략) Visual Studio Code 설치 Code 확장 프로그램 : C/C++ Extension Pack 설치 CMake Tools 확장 프로그램 설정 -> Cmake : Generator 를 'Ninja' 대소문자 맞춰서 설정 프로젝트 만들고 코드 CMakeLists.txt, .vscode/c_cpp_prop..
[링크] GitHub 온라인 저장소 commit 삭제(초기화) 하기 꽤 오래 삽질했는데.. 진작에 봤으면ㅠㅠㅠ git - how to delete all commit history in github? - Stack Overflow how to delete all commit history in github? I want to delete all commit history but keep the code in its current state because, in my commit history, there are too many unused commits. How can I do it? Is there any git command can do this?... stackoverflow.com 로컬 프로젝트 .git폴더 삭제후 다음 명령을 입력한다. # git@github.c..
온라인 컴파일러 사이트 괜찮은곳 Compiler Explorer (godbolt.org) Compiler Explorer godbolt.org 저는 C++언어 테스트해보려고 잠깐 사용했는데 수정한대로 실시간 컴파일로 즉시 결과, 바이트(어셈블리) 코드 볼수 있어서 편하네요. VS Code를 써도 이런 면에서는 좀 신속하지 못하기 때문에 더 좋은 툴이 나오기 전까진 계속 쓸거 같습니다ㅋㅋ
굳이 지역변수를 멀리하지 않아도 됩니다. 제목이 좀 어그로지만;; 함수안에 지역변수를 정의했을경우 전역변수를 정의하는것과 다르게 컴파일러 재량에 따라 그 변수 메모리를 레지스터 공간 즉 일반 램 보다 더 빠른 공간에 할당시켜 줍니다. 그래서 임시로 사용할 숫자 같은건 그냥 함수 내에 정의하는게 좋습니다. C/C++ 기준이지만 다른 언어도 비슷할것이라 생각해요. 🙂 PS. 확인해본 결과 for문 같은 곳에서도 안쪽에 정의하나 바깥쪽에 정의하나 결과적으로 실행 동작이 같다면 컴파일러가 똑같은 최적화 이진 코드를 만들어냅니다!(최적화 옵션 켰을때 기준)
우연히 심심해서 했는데 재밌었던 웹게임(BASED LOADED) BASES LOADED by kindanice (itch.io) BASES LOADED by kindanice baseball survivors kindanice.itch.io 자세한 설명은 생략한다.
랜덤 함수 랜덤 함수를 사용하기 위해선 random 헤더를 포함해야 합니다.(srand, rand 함수만 사용하려면 stdlib.h를 포함) 랜덤한 수를 가져오기 위해서는 rand 함수를 사용합니다. rand 함수는 0부터 RAND_MAX(32767)까지의 랜덤 한 값을 출력합니다. int rand(); 그런데 이 랜덤 함수가 겉으론 랜덤이지만 실제로는 함수가 호출될 때마다 일정한 패턴으로 바뀌어 호출되므로 프로그램을 실행할 때마다 같은 숫자가 출력됩니다. 이를 방지하기 위해서는 시작 수를 정해주어야 하는데 다음 함수를 사용합니다. void srand(unsigned int seed); seed에 처음 시작 수를 넣어주면 되는데 이 수는 프로그램 실행마다 달라야 됩니다. 실행마다 달라질 수 있는 대표적인 수로는 시..
시간 함수 time 함수를 이용해서 현재 시간을 반환할 수 있습니다. #include #include //이 헤더가 포함되야 합니다. int main() { time_t now = time(nullptr);//time(&now);도 가능합니다. 인수와 반환이 제공하는 값이 똑같습니다. __time32_t now32 = _time32(nullptr);//time의 32비트 버전 __time64_t now64 = _time64(nullptr);//time의 64비트 버전 clock_t cl = clock(); printf("프로그램 시작 후 경과 시간(초) : %f\n", (double)cl / CLOCKS_PER_SEC); time_t now2 = time(nullptr); __time32_t now2_32 = _t..
수학 함수 수학 함수를 사용하려면 math.h 헤더를 포함해야 합니다. ​ 먼저 삼각함수부터 살펴보면, double sin(double x); double cos(double x); double tan(double x); double asin(double x); double acos(double x); double atan(double x); double sinh(double x); double cosh(double x); double tanh(double x); double atan2(double y, double x); 여기서 앞에 a가 붙은 함수들은 역삼각 함수이며, 뒤에 h가 붙은 함수들은 쌍곡선 삼각 함수입니다. 함수의 인수는 각도(degree)가 아니라 라디안(radian) 값을 받는데 이를 변환하기 위..