C, C++/Setup&Tips
배열 재배열
배열 재배열
2025.07.151. 배열 재배열 예제 - 마지막 요소로 덮어쓰는 방식(O(1))더보기#include #include #define MAX_SOCK 10 // [1] 최대 소켓 수 (클라이언트 수 제한)// [2] 소켓 번호 배열과 현재 접속자 수 변수int clnt_socks[MAX_SOCK];int num_user = 0;// [3] 클라이언트 소켓 번호 추가 함수void AddClient(int sock) { if (num_user >= MAX_SOCK) { printf("[오류] 최대 인원 초과! 추가 불가\n"); return; } clnt_socks[num_user++] = sock; printf("[추가] 소켓 %d 추가됨. 현재 인원: %d명\n", sock..
snprintf( )
snprintf( )
2025.07.111. snprintf( )더보기1. snprintf 어원: string + n + printf = 문자열(string)에 최대 n글자까지 포맷 출력(print formatted) snprintf는 문자열 버퍼 크기를 지정해서버퍼에 "안전하게" 포맷팅해서 저장하여오버플로우 위험을 막기 위해 등장했습니다. 2. 함수 원형int snprintf(char *str, size_t size, const char *format, ...); str: 출력될 문자열을 저장할 버퍼(배열)size: 버퍼의 전체 크기(바이트 단위, 널문자 포함)format: 출력 형식(printf 스타일)...: 추가 인자(가변 인자) 2. 기본 사용 예시더보기#include int main() { char buffer[50]; ..
Code Blocks 설치, 삭제
Code Blocks 설치, 삭제
2024.09.051. APT 패키지 매니저로 설치 sudo apt update; sudo apt upgrade -y; sudo apt install g++ sudo apt install codeblocks -y sudo apt install codeblocks-contrib -y 2. 삭제sudo apt autoremove --purge codeblocks -y
콘솔 게임 맵 이동
콘솔 게임 맵 이동
2024.08.22이모지 링크 https://kr.piliapp.com/twitter-symbols/https://www.unicode.org/emoji/charts/full-emoji-list.htmlhttps://kr.piliapp.com/symbol/#graphic 1)#include #define emoji_Size sizeof "🔚" // icon size == 5byte#define movable 8#define x_Blocks (movable + 2) // 이동 블럭 수 + 양쪽 벽 2개#define x_Total (emoji_Size * x_Blocks) // x 축 전제 크기int main(void){ char map[x_Total] = {"⬛🔚🔙🔚🔙🔚🔙🔚🔙⬛"}; ..
문자 인코딩 1 - 인코딩
문자 인코딩 1 - 인코딩
2024.08.22https://namu.wiki/w/UTF-8#toc UTF-8UTF-8은 가장 많이 사용되는 가변 길이 유니코드 인코딩이다. 켄 톰슨과 롭 파이크( Go 언어 를 만든 사람namu.wiki #include #define iconSZ sizeof "✅" // icon size == 5byte// https://namu.wiki/w/UTF-8#toc// https://www.compart.com/en/unicode/U+2705// UTF-8 Encoding: 0xE2 0x9C 0x85int main(void){ char icon[iconSZ] = "✅"; printf("icon %s size: %ld Byte\n", icon, sizeof icon); char *ptr = icon; ..
rand()와 srand()
rand()와 srand()
2024.08.131. 기본 개념 rand() 임의의 난수 하나를 생성한다. 범위는 0~RAND_MAX, 0~32767(0x7fff) 이다. srand() 시간 값을 매개로 난수를 생성한다. time(NULL) 현재 시간을 초단위로 변경해 반환 2. 기본 사용법 int num = rand() % n; 임의의 0 ~ n-1 범위 중 임의의 수 하나를 생성한다.ex 1.) rand() % 5 의 범위는 0 ~ 4ex 2.) rand() % 9 의 범위는 0 ~ 8 3. 응용 사용법 int i = rand() % n + m; // ex 1.) rand() % 4 + 1 의 범위는 1, 2, 3, 4 (연속된 수)int j = rand() % n * m; // ex 2.) rand() % 4 * 2 의 범위는 0, 2..
<WSL>SourceTree, failed with code 128
<WSL>SourceTree, failed with code 128
2024.05.24제 경우는, 윈도우11 SourceTree 에서, WSL 프로젝트 경로에 접근시 아래와 같은 에러가 발생했습니다.
VSCode, Snippet 환경설정
VSCode, Snippet 환경설정
2024.05.17Snippet 이란?더보기Snippet(스니펫): 작은 정보, 한 토막 프로그래밍 코드, 텍스트 조각 등을 의미합니다. 소스코드를 작성할 때, 자주 사용하는 코드 블록, 코드 패턴, 형식 지정 규칙 등을 정의된 템플릿 형식으로 저장하고 효율적으로 삽입하여 재사용하도록 도와주는 도구입니다 C , Snippet 환경설정더보기{ "c main Function": { "prefix": "!main", "body": [ "#include ", "", "int main(int argc, char **argv)", "{", "\t$1", "\treturn 0;", "}" ], }, "printf": { "prefix"..
<WSL>VSCode, Debug 환경설정
<WSL>VSCode, Debug 환경설정
2024.05.17Pre-Work.더보기GDB(GNU DeBugger) 설치는 필수입니다. 01. WSL 환경에서 VS Code, C/C++ 환경설정 VS Code, C/C++ 환경설정" data-og-description="MSDN 공식문서, VSCode 공식문서 WSL 환경설정더보기01. WSL 설치 WSL2 환경 설정[WSL 공식문서], [WSL 개발 환경 설정]Step1. 윈도우에서 WSL 활성화더보기Window + S 단축키를 누르면, 검색 기능이 활성화 됩" data-og-host="basiclike.tistory.com" data-og-source-url="https://basiclike.tistory.com/352" data-og-url="https://basiclike.tistory.com/352" dat..
<WSL>VSCode, Git, GitHub 환경설정
<WSL>VSCode, Git, GitHub 환경설정
2024.05.15VSCode 공식문서 Pre-Work.더보기01. WSL 환경설정 WSL2 환경설정[WSL 공식문서], [WSL 개발 환경 설정]Step1. 윈도우에서 WSL 활성화더보기Window + S 단축키를 누르면, 검색 기능이 활성화 됩니다.서검색어로 키워드 입력하면 검색된 를 실행합니다., 체크 ✔ 하여 활basiclike.tistory.com 02. Git 환경설정 Git 환경설정" data-og-description="Pre-work.더보기01. WSL 환경 설정 WSL2 환경설정[WSL 공식문서], [WSL 개발 환경 설정]Step1. 윈도우에서 WSL 활성화더보기Window + S 단축키를 누르면, 검색 기능이 활성화 됩니다.서검색어로 키워드 입력" data-og-host="basiclike.tist..
<Win>VSCode, C/C++ 제거
<Win>VSCode, C/C++ 제거
2024.05.13Uninstall Visual Studio CodeStep 1. VSCode 프로그램 삭제 Step 2. %APPDATA%\Code 삭제 C:\Users\사용자\AppData\Roaming Step 3. %USERPROFILE%\.vscode 삭제 C:\Users\사용자 Step 5. MinGW-w64 삭제
<Win>VSCode, C/C++ 환경설정
<Win>VSCode, C/C++ 환경설정
2024.05.13VSCode 공식문서Step 1: C/C++ 컴파일러(MinGW-w64)설치더보기Windows OS 에 Linux OS 에서 사용하는 C/C++ 컴파일러인 GCC 를 사용할 수 없습니다.대신, MinGW(Minimalist GNU for Windows)를 설치합니다.컴파일러가 무엇인지 모른다면, 컴파일러, 빌드, 실행, 기계어와 프로그래밍 언어 관계를 먼저 이해합니다. 01. 링크에서 MinGW-w64 인스톨러 설치 프로그램을 다운로드 합니다. ①링크에서 ②최신 업데이트의 ③ Assets▼을 찾습니다. ④ msys2-x86_64-XXXXXXXX.exe 네이밍을 가진 실행 파일을 다운 받습니다. 업데이트에 따라 년월일을 의미하는 숫자는 다를 수 있습니다. 02. 다운받은 MinGW-w64 ..