전체 글 116

[Python:파이썬:기초] 4. 자료형 - 리스트(List)

[Python:파이썬:기초코딩] 4. 자료형 - 리스트(List) 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و 파이썬은 C언어의 배열과 유사한 자료형으로 리스트를 지원합니다. 리스트는 단일 변수 대신 같거나 또는 서로 다른 자료형의 값들을 그룹 지어 관리할 수 있기 때문에 코드가 간결해지고 코딩을 용이하게 합니다. 리스트는 대괄호('[', ']')를 이용하여 정의하며 각 요소(element)의 순서는 0부터 마지막 n까지입니다. l1 = [1, 2, 3, 4, 5] l2 = ['apple', 'watermelon', 'persimmon'] l3 = [1, 'apple', 2, 'watermelon', 3, 'persimmon'] 예를 들어 리스트 변수 l1의 첫번째 요소는 l1[0], 두번째 요소는..

[Python:파이썬:기초] 3. 자료형 - 문자열(String)

[Python:파이썬:기초코딩] 3. 자료형 - 문자열(String) 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و 문자열은 기본적으로 두 개의 따옴표(" ", quotation mark)로 둘러싸인 문자들의 집합을 의미합니다. 파이썬은 문자열 선언 시 큰 따옴표(" "), 작은따옴표(' ')를 구분하지 않으므로 코딩할 때 편리한 방식을 사용하면 됩니다. 파이썬은 문자열 연산, 인덱싱, 슬라이싱, 길이 구하기 등을 지원합니다. 이번 포스팅에서는 기본적인 문자열 변수 선언, 초기화, 출력에 대해 정리하고 나머지 자세한 내용은 별도의 예제로 정리해보고자 합니다. 다음은 C언어와 유사한 이스케이프 문자, 문자열 포맷 코드입니다. 🔗 이스케이프 문자(Escape Characters) 코드 설명 \\ \ 문자..

[Python:파이썬:기초] 2. 자료형 - 숫자(Numbers)

[Python:파이썬:기초코딩] 2. 자료형 - 숫자(Numbers) 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و C/C++에서는 int, char, float, double 등의 자료형을 이용하여 변수 선언 시 자료형을 미리 정의 하지만, 파이썬은 입력하는 값에 따라 자료형이 자동으로 정의됩니다. 그래서 아래 예제를 보면 별도의 자료형을 선언하지 않고 정수, 실수, 16진수 등을 입력하였습니다. ※ 참고 : 파이썬 변수 이름 선언할 때 규칙 o 영문자(대, 소문자 구분), 숫자, 언더스코어('_')로 구성 o 변수이름이 숫자로 시작할 수는 없음(예: 12num, 3avg ) o 파이썬 예약어는 변수명으로 사용할 수 없음(예; for, while, and, in, pass 등) 예제는 연산, 변수 ..

[Python:파이썬:기초] 1. 소개 : 프로그래밍 언어 순위(Popularity of Programming Languages)

[Python:파이썬:기초코딩] 1. 소개 : 프로그래밍 언어 순위(Popularity of Programming Language) 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و 파이썬은 전 세계 개발자들 사이에서 가장 인기 있는 언어 중에 하나입니다. 활용 분야가 넓고 커뮤니티도 많이 활성화되어 있습니다. 무엇보다 데이터 분석, 게임, AI(인공지능) 등 IT 분야에서 정말 방대한 확장 라이브러리들이 많이 있습니다. 개인적인 생각으로 시대 흐름상 C/C++에 이어 파이썬도 배워두면 좋은 프로그래밍 언어임에는 틀림이 없는 것 같습니다. 그래서 파이썬에 대한 스터디를 시작해보려 합니다. 아래는 프로그래밍 언어 인기도를 조사한 자료이니 참고하세요. 프로그래밍 언어 순위 o Top 10 programmin..

[C언어/C++] 파일 정리(청소) 프로그램(MCSweeper) : File Sweeper v 1.0-_getdrive, _findfirst, _findnext, _unlink functions example

[C언어/C++] 파일 정리(청소) 프로그램(MCSweeper) : File Sweeper v 1.0-getdrive, _findfirst, _findnext, _unlink functions example 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و _findfirst, _findnext, _findclose 함수 사용법에 대해 스터디하던 중에 조금이라도 의미 있는 것을 만들어 보자는 생각에 아이디어를 더하여 C, D, E 등 드라이브 내 불필요한 파일들을 자동으로 삭제하는 간단한 프로그램을 만들어 보았습니다. 제목에서도 알 수 있듯이 컴퓨터 내에 있는 .$$$, .TMP, .BAK 등의 확장자를 가지는 파일들을 자동으로 정리해 주는 프로그램입니다. 소스코드에서 삭제 대상 확장자를 지정할 수 있습..

[C언어/C++] HDD, SSD 드라이브 목록 & 용량 구하기(_chdrive, GetDiskFreeSpaceEx functions example)

[C언어/C++] HDD, SSD 드라이브 목록 & 용량 구하기 : _chdrive, GetDiskFreeSpaceEx functions example) 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و _chdrive(int drive) 함수는 현재의 드라이브를 변경하는 함수입니다. 파라미터인 int drive는 1에서부터 26까지의 정수로 1은 A 드라이브, 2는 B 드라이브, 3은 C 드라이브 등을 의미하며 정상적으로 드라이브가 변경되면 0을 리턴합니다. 아래 예제는 이런 _chdrive() 함수의 특성을 이용하여 컴퓨터에 장착된 HDD(Hard Disk Drive, 하드디스크), SSD(Solid-State Drive)에서 사용 가능한 드라이브 목록을 구합니다. 사용 가능한 드라이브들을 구해서 d..

[C언어/C++] 데이터 단위변환 : Bytes → Kilobyte(KB) → Megabyte(MB) → Terabyte(TB) - Converting bytes to human readable values(Bytes, KB, MB, GB, TB) in C

[C언어/C++] 데이터 단위변환 : Bytes → Kilobyte(KB) → Megabyte(MB) → Terabyte(TB) - Converting bytes to human readable values(Bytes, KB, MB, GB, TB) in C 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و 바이트를 킬로바이트, 메가바이트, 테라바이트로 변환하는 예제입니다. 코드가 정상적으로 동작하는지 확인하기 위해 하드 코딩된 testBytes[] 배열을 선언하여 테스트 데이터를 구성하였습니다. 바이트 수를 직접 입력하여 변환된 결과를 확인 할 수도 있습니다. 큰 수의 바이트는 사람이 읽기 어려우므로 입력한 바이트의 크기에 따라 자동으로 KB, MB, GB, TB로 변환하여 보여주도록 하였습니다. 단위변..

[C언어/C++] 파일명에서 확장자만 추출하기-Extract file extension from filename(strrchr function example)

[C/C++] 파일명에서 확장자만 추출하기-Extract file extension from filename 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و 컴퓨터에는 실행파일, 문서 파일, 이미지 파일, 음악파일 등에 따라 .exe, .pptx, .xlsx, .hwp, .jpg, .gif, mp3 등 다양한 형태의 확장자가 존재합니다. 이번 포스팅은 "maincodes.exe", "365일 생활 패턴 분석.hwp", "2020발표자료.pptx" 등과 같은 전체 파일명에서 마침표(.)로 구분되는 .exe, .pptx, .xlsx, .gif 등 확장자만을 추출하는 예제입니다. 🔗 파일 확장자 추출 예제(Example): 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19..

[C언어/C++] 윈도우 파일 시간(MAC Time) 직접 수정 하기-SystemTimeToFileTime, LocalFileTimeToFileTime, SetFileTime 함수 예제

[C언어/C++] 윈도우 파일 시간(MAC Time) 직접 수정 하기-SystemTimeToFileTime, LocalFileTimeToFileTime, SetFileTime 함수 예제 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و 지난번에는 SetFileTime, GetFileTime 함수를 스터디하며 파일 간의 MAC Time을 복사하는 방법에 대해 포스팅하였습니다. 이번에는 파일의 MAC Time을 직접 지정한 날짜로 수정하는 방법에 대한 내용입니다. MAC Time 수정 시간(Modification Time), 접근시간(Access Time), 속성 변경 시간(metadata Change Time) 예제는 지정한 날짜로 파일의 MAC Time을 수정하기 위해 먼저 사용자로부터 년, 월, 일, ..

[C언어/C++] 파일 시간(MAC Time) 복사/수정하기-GetFileTime, SetFileTime 함수 예제

[C언어/C++] 파일 시간(MAC Time) 복사/수정하기-GetFileTime, SetFileTime 함수 예제 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و 일반적으로 파일 시스템은 파일에 대한 MAC Time을 기록합니다. MAC Time은 파일의 수정 시간(Modification Time), 접근시간(Access Time), 속성 변경 시간(metadata Change Time)을 의미하며 윈도우 운영체제 환경에서는 탐색기의 속성(R) 메뉴를 통해 확인할 수 있습니다. 예제는 mainCodes.zip 파일의 MAC Time을 읽어서 jollytree.zip 파일에 그대로 복사하는 기능이 포함되어 있으며 MAC Time 은 GetFileTime, SetFileTime 함수에 의해 복사됩니다. ..

[C언어/C++] 파일 삭제 하기-unlink, remove, DeleteFile 함수 예제(Delete a file in C)

[C언어/C++] unlink, remove, DeleteFile 함수 예제 - 파일 삭제 하기(Delete a file in C) 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و C언어는 파일 처리 함수(remove, unlink, DeleteFile)를 이용하여 파일을 삭제할 수 있습니다. remove, unlink는 C언어 라이브러리에서 제공하는 함수이고 DeleteFile 함수 윈도우 운영체제 전용 Win32 API 입니다. 3개 함수 모두 1개의 파라미터를 가지고 있으며 파라미터로 파일명을 입력받습니다. int remove(const char *path); int unlink(const char *filename); BOOL DeleteFile(LPCSTR lpFileName); 메인코즈의 글..

[C언어/C++] 스레드 이용하여 파일 복사 하기(3/3) - 저수준 파일 입출력 함수(open, write, read 등) 예제 + _beginthreadex 함수

스레드 이용하여 파일 복사 하기(3/3) - 저수준 파일 입출력 함수(open, write, read 등) 예제 + _beginthreadex 함수 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و 지난번에는 Win32 API인 ① CopyFile 함수를 이용한 파일 복사, ② FILE 스트림 함수를 이용한 파일 복사에 대해 살펴보았습니다. 이번에는 파일 복사하기 마지막 세 번째로 스레드를 이용한 ③ 저수준 파일 입출력 함수를 이용한 파일 복사 예제를 포스팅합니다. 전체적인 유형은 파일 스트림(FILE 포인터) 함수를 이용한 예제와 유사합니다. 🔗 파일 복사 방법 종류 ① CopyFile 함수 이용 ② 파일스트림(FILE 구조체) 함수 이용 ③ 저수준 파일 입출력 함수 이용 🔗 저수준 파일 입출력 함수를..

[C언어/C++] 스레드 이용하여 파일 복사 하기(2/3) - FILE 스트림 함수(fopen, fwrite, fread 등) 예제 + _beginthreadex 함수

스레드 이용하여 파일 복사 하기(2/3) - FILE 스트림 함수(fopen, fwrite, fread 등) 예제 + _beginthreadex 함수 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و 지난번에는 Win32 API인 ① CopyFile 함수를 이용한 파일 복사 방법에 대해 살펴보았습니다. 이번에는 파일 복사하기 두 번째로 스레드를 이용한 ② FILE 스트림 함수를 이용한 파일 복사 예제를 포스팅합니다. 🔗 파일 복사 방법 종류 ① CopyFile 함수 이용 ② 파일스트림(FILE 구조체) 함수 이용 ③ 저수준 파일 입출력 함수 이용 🔗 FILE 스트림 함수를 이용한 파일 복사 예제(Example): 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ..

[C언어/C++] 스레드 이용하여 파일 복사 하기(1/3) - CopyFile 함수 + _beginthreadex 함수 예제

스레드 이용하여 파일 복사 하기(1/3) - CopyFile 함수 + _beginthreadex 함수 예제(CopyFile, _beginthreadex functions example) 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و 윈도우 환경에서 파일을 복사하는 방법은 여러 가지가 있습니다. 대표적인 방법은 CopyFile API를 사용하는 방법, FILE 스트림 계열의 fopen, fwrite, fread 등의 함수를 이용하는 방법, 저수준 파일 입출력 함수인 open, read, write 등의 함수를 이용하는 방법이 있습니다. 🔗 파일 복사 방법 종류 ① CopyFile 함수 이용 ② 파일스트림(FILE 구조체) 함수 이용 ③ 저수준 파일 입출력 함수 이용 먼저 Windows에서 제공하는 Co..

[C언어/C++] Winsock 멀티스레드 1:N 대용량 파일 전송(송수신) 서버/클라이언트 구현하기(TCP/IP Windows socket) #3/3

[C언어/C++] Winsock 멀티스레드 1:N 대용량 파일 전송(송수신) 서버/클라이언트 구현하기(TCP/IP Windows socket) #3/3 - 서버 편 안녕하세요 JollyTree입니다 (•̀ᴗ•́)و 지난번 클라이언트 설명과 소스코드를 포스팅한데 이어 이번에는 1:N 파일 수신 서버 프로그램에 대한 설명과 소스코드입니다. 서버/클라이언트에 대한 전반적인 개념, 실행 절차, 주요 기능 등은 아래 링크를 참고하세요. ⓐ Winsock 멀티스레드 1:N 대용량 파일 전송 서버/클라이언트 구현하기 - 프로그램 주요 기능, 개념, 절차 ⓑ Winsock 멀티스레드 1:N 대용량 파일 전송 클라이언트 구현하기(클라이언트 소스코드) 서버는 N개의 클라이언트로부터 파일을 수신해야 하기 때문에 1개의 파일..