본문 바로가기

Programming/C9

[C] 간단한 MP3 플레이어 제작 로컬 파일에 있는 노래를 재생할 수 있는 간단한 MP3 플레이어를 제작했다. 프로젝트 진행 기간 : 2023.8.4 ~ 8.10 개발 툴 : visual studio 2022 언어 : C 기능 1. MP3 라이브러리 (메모장) 조회 2. 플레이리스트 노래 재생 3. 라이브러리 노래 추가 4. 라이브러리 노래 삭제 5. 프로그램 종료 실행 결과 라이브러리 노래 추가 이를 반복한 후, 라이브러리 조회 라이브러리 노래 삭제하기 프로젝트 폴더에 txt 파일에 라이브러리 반영 플레이리스트에서 원하는 노래 재생 사진으로 확인할 수는 없지만, 컴퓨터에서 해당 노래가 재생되고 있다. 문제점 라이브러리에 노래를 추가할 때, 공백이 들어가면 공백을 기준으로 2개의 노래가 저장된다. 소스코드, 실행파일 노래 재생에 필요한 .. 2024. 1. 10.
[C언어] 17. 동적메모리와 연결리스트 프로그램이 메모리를 할당 받는 방법 정적 static 동적 dynamic 정적 메모리 할당 프로그램 시작 전 미리 정해진 크기의 메모리 할당 결정된 크기보다 더 큰 입력이 들어온다면 처리 못함 더 작은 입력 들어오면 메모리 공간 낭비 동적 메모리 할당 실행 도중 메모리를 할당 사용 끝나면 시스템에 메모리를 반납 필요 만큼만 할당 받아, 메모리 효율적 사용 int *p; p = (int *)malloc(100*sizeof(int)); // 100개의 정수 할당 ... free(p); //p가 가리키는 동적 메모리 반납 예제 #1 #include #include int main(void) { int* list; list = (int *)malloc(3 * sizeof(int)); //동적메모리 할당 if (.. 2023. 10. 19.
16. 전처리 및 다중 소스 파일 전처리기(preprocessor) 컴파일에 앞서 소스파일을 처리하는 컴파일러의 한 부분 소스파일 → C컴파일러(전처리기→컴파일러) → 오브젝트파일 지시어 / 의미 #define 매크로 정의 #include 파일 포함(헤더파일 복사해옴) #line 행번호 출력 #pragma 시스템마다 의미 다름 단순 매크로 + 프로그램 가독성 높임 + 상수 바꾸기 쉬움 ex) #define PI 3.141592 함수 매크로 function-like macro ex) #define SQUARE(x) ((x)*(x)) 괄호로 둘러싸는 것이 좋음 + 함수 호출단계가 필요x → 실행속도 빠름 - 소스 코드 길이 길어짐 간단한 기능은 매크로 사용 #define MIN(x,y) ((x)> (k)) & 0x01) #define SET.. 2023. 10. 19.
15. 스트림과 파일 입출력 파일 열기 FILE *fp; fp = fopen(”파일이름.txt”, “파일모드w”);. 파일모드 r 읽기모드 w 쓰기모드 a 추가모드로 파일 열기 r+ 읽기모드, 쓰기 전환가능 w+ 쓰기모드 생성, 읽기 전환 가능 a+ 추가모드, 읽기 전환 가능 t 텍스트 파일 모드 b 이진 파일 모드 파일 만들고 파일에 텍스트 쓰기 #define _CRT_SECURE_NO_WARNINGS #include int main(void) { FILE* fp = NULL; //포인터로!! fp = fopen("sample.txt", "w"); if (fp == NULL) printf("파일 열기 실패\\n"); else printf("파일 열기 성공\\n"); fprintf(fp, "Hello file\\n"); fclose.. 2023. 10. 19.
728x90