C, C++
1.1 Socket Networking
1.1 Socket Networking
2023.11.24Networking 네트워킹이란? 네트워크로 연결되어 있는 서로 다른 두 컴퓨터가 데이터를 주고 받을 수 있도록 하는 것으로 물리적인 연결이 필요하다. Socket Socket 은 단말(eg. 전화기)을 논리적인 소스코드로 추상화한 형태다.일반적인 컴퓨터에서 다루는 모든 프로그램의 네트워크는, C언어 POSIX library 의 기반이다. Socket 표준 이라고 한다. C, C++, C#, Java, Python 등 프로그래밍 언어에서 사용하는 네트워크 라이브러리도 마찬가지다. 내부적으로 Socket 표준을 기반으로 조금 더 편리하게 사용하도록 발전된 형태의 라이브러리들에 불과하다. API / 클래스설명제공 기능OS/PLUnixSocket API네트워크 표준 APILow Level 의 소켓 프로그래밍..
문자열 한글 카운팅
문자열 한글 카운팅
2023.08.10#include int cntKor(char pStr[]) { int i, k, cnt = 0; for (i = 0; pStr[i] != '\0'; i++) if (pStr[i] & 0x80) cnt++; return cnt/3; } int main(void) { char *s[] = {"A BCD EFG GH ", // space 9 // eng 8 "가 나 다 라 마 "}; // space 15 // kor 5 x 3byte printf("%d\n", cntKor(s[0])); printf("%d\n", cntKor(s[1])); printf("%d\n", cntKor(" 가나 DEF")); // space 5 // eng 3 // kor 2 x 3byte return 0; } 1Byte 8bit, ..
윈도우 콘솔 실행 + 음악 재생
윈도우 콘솔 실행 + 음악 재생
2023.07.13
윈도우 입력 kbhit( )
윈도우 입력 kbhit( )
2023.07.13window11 c언어 키보드 입력 scanf( ) getch( ) kbhit( ) ① kbhit( ) 공식문서 kbhit( ) 함수 - Microsoft Learn ② 구문 #include int _kbhit( void ); ③ 반환 _kbhit( )함수가 실행되면, 키가 눌리지 않았으면 0 (False) 리턴 키가 눌리면 0이 아닌(True), 입력된 키 값을 buffer 에 넣는다.
윈도우 콘솔 이모지 출력
윈도우 콘솔 이모지 출력
2023.07.13
콘솔 글자색, 배경색 수정(2) - Win, Linux
콘솔 글자색, 배경색 수정(2) - Win, Linux
2023.07.10Window11LinuxC언어콘솔출력 색 터미널에 출력 문자, 배경 색 변경 방법중요한 로그(디버깅시 오류 등)를 보기 쉽게 컬러로 출력 가능 ① ANSI Color 코드 (링크)ANSI 컬러 코드 + 문자 + 뒤에 ANSI Reset 코드 예제) printf("\x1b[30m log text \x1b[0m \n");예제) printf("\x1b[30m" "%s" "\x1b[0m \n"); ② 사용법②.①#include // #define ANSI_COLOR_RED "\x1b[30m"#define ANSI_COLOR_RED "\x1b[31m"#define ANSI_COLOR_GREEN "\x1b[32m"#define ANSI_COLOR_YELLOW "\x1b[33m"#defin..
콘솔 글자색, 배경색 수정(1) - Win11
콘솔 글자색, 배경색 수정(1) - Win11
2023.07.10window11 C 언어 콘솔 출력 색 ① 공식문서 SetConsoleTextAttribute 함수 - Windows Console | Microsoft Learn ② 함수 원형 # 원형 BOOL WINAPI SetConsoleTextAttribute( _In_ HANDLE hConsoleOutput, // 핸들 (콘솔 화면 버퍼) _In_ WORD wAttributes // 색상 () ); // return 0; 성공 ③ 함수 매개 변수 ③.① hConsoleOutput // 표준 핸들 반환 (콘솔출력, 고정값) GetStdHandle(STD_OUTPUT_HANDLE) // 사용 예시 // SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 색상); ③..
엔디안
엔디안
2023.05.15엔디안이란?(Endianness)더보기: 컴퓨터의 메모리와 같은 1차원의 공간에 여러 개의 연속된 대상(Byte)가 저장되는 순서(Byte order) CPU에 따라서 바이트의 숫자를 메모리 공간에 저장하는 방식에 있어 차이가 있습니다.이해하기 쉽게 32비트 CPU란 가정하에 간략한 예를 들어보겠습니다.숫자 1을 저장 할 때, 앞에서 부터 저장할 것인지, 뒤에서 부터 자장할 것인지 순서가 다릅니다.# 숫자 1 저장 예시 100000000 00000000 00000000 00000001# 숫자 1 저장 예시 200000001 00000000 00000000 00000000 메모리와 메모리 주소더보기데이터 최소 단위1bit컴퓨터 메모리의 데이터 최소 저장 단위1Byte(8bit)1bit를 저장해도 1byt..
<Win> VSCode - 한글 깨짐(2) - 폰트 이슈
<Win> VSCode - 한글 깨짐(2) - 폰트 이슈
2023.03.26VSCode 터미널 설정의 폰트를 변경한다.에디터 폰트를 변경하면, 터미널 폰트도 변경된다. VSCode 터미널 한글 깨지는 문제 d2coding 폰트를 사용하는 이유는, 한글을 사용해야 하기 때문이다.코딩시 영문자와 숫자 뿐만 아니라 한글 유사 기호간 변별력이 필요하다.한글을 사용하지 않는다면, Consolas, Cascadia 를 계속 사용하면 된다. ① d2coding 폰트 다운로드 ② 폰트 설치 ③ VSCode 폰트 설정터미널과 에디터의 폰트를 변경해준다. 에디터 폰트를 변경하면, 터미널 폰트도 변경된다. User > Text Editor > FontUser > Features > Terminal
<Win> VSCode - 한글 깨짐(1) - 인코딩 문제
<Win> VSCode - 한글 깨짐(1) - 인코딩 문제
2023.03.26한글 입력시 출력이 안되는 문제 VSCode 설정의 Encoding 수정
VSCode 한국어 설정
VSCode 한국어 설정
2023.03.121. 한국어 팩 설치 2. VS Code 재실행 3. 언어 변경 확인 VS Code 언어 선택 >configure display language