본문 바로가기

지난 학기들의 기록/C 기초21

[C실습] 파일 입출력 - 파일을 읽어서 구조체에 저장하고 검색하기 파일 입출력 예제 - 파일을 읽어서 파일 내용을 구조체에 저장하고, 검색하기 이번 포스트에서는 파일입출력을 연습해보겠습니다. 사람들의 이름과 나이가 담긴 텍스트 파일을 읽어서, 구조체배열에 저장하고 사람의 이름을 검색해서 파일의 어디에 위치해있는지를 출력합니다. 문제 풀이 전 사전 작업 1. 파일 입출력 개념을 공부했다는 가정하에 작성되는 글입니다. 먼저 현재 작성중인 소스파일의 폴더에 읽을 텍스트파일을 함께 위치해줍니다. 2. 텍스트파일에 내용을 작성해줍니다. 저는 다음과 같이 6명의 이름과 나이를 작성해두었습니다. 문제 풀이 먼저 파일을 열고, 파일 내용을 읽어야하는데 텍스트파일에 내용이 저장된 형식에 맞게 읽어와야합니다. 현재 저장된 형식을 살펴보면, 한 줄에 한명의 정보가 저장되어있고 각 사람의 .. 2020. 12. 15.
[C실습] 동적할당 유형 분석 1 - 구조체멤버에 동적할당을 이용하여 저장하기(strncpy 활용예제) 문자열을 분리하여, 구조체멤버에 동적할당을 이용하여 저장하기 man-25-1.tistory.com/57?category=940891 [C실습] 문자열 유형 분석 2 - 포인터배열을 사용한 strtok구현하기(문자열에서 단어 분리하기) 포인터배열을 사용한 strtok함수 구현하기 문자열 string.h 헤더파일에 내장되어있는 strtok함수는 string token 즉 문자열을 단어로 쪼개주는 함수입니다. 이번 포스트에서는 strtok함수를 C언어로 구현 man-25-1.tistory.com 지난 포스트에서, 포인터배열을 통해 문자열을 단어로 분리하는 과정을 배웠습니다. 이번 동적할당 실습부분에서는 이 과정을 좀 더 심화하여서 다루게 될 것입니다. 먼저 간단한 예제를 통해 오늘 배우게 될 내용을 개념적으로.. 2020. 11. 20.
[C실습] 문자열 유형 분석 2 - 포인터배열을 사용한 strtok구현하기(문자열에서 단어 분리하기) 포인터배열을 사용한 strtok함수 구현하기 문자열 string.h 헤더파일에 내장되어있는 strtok함수는 string token 즉 문자열을 단어로 쪼개주는 함수입니다. 이번 포스트에서는 strtok함수를 C언어로 구현해보며 이해하고 최종적으로 strtok함수를 사용하는것까지 공부해보겠습니다. 1. strtok함수를 c언어로 구현하기 먼저 구현해볼 방법은 string문자열을 입력받아서 다른 2중배열을 선언하고 단어별로 쪼개서 2중배열에 저장하는 것입니다. 아이디어 생각하기 먼저 단어를 구분짓는다는 것은 공백입니다. 따라서 공백을 기점으로 단어를 분리하는 것이 핵심 아이디어 일 것입니다. 예시를 들어 "simple is best"라는 문자열을 생각해보면 공백이 등장할때마다 단어가 끝나는것을 알수있습니다.. 2020. 10. 6.
[C실습] 문자열 유형 분석 1 - 문자열에서 숫자 분리하기 문자열 유형 분석 1 - 문자열에서 숫자(정수) 추출하기 저번 포인터 과제에 이어서 문자열 과제에서도 연속해서 등장한 문제로, 문자열에서 숫자를 빼내는 연습을 해보겠습니다. 문자열에서 숫자가 저장되는 방식은 각각의 정수가 하나의 원소로 자리를 가지게 됩니다. 따라서 그림처럼 25와 35를 입력하더라도 문자열에서는 2,5 3,5 각각이 독립적으로 존재하기때문에 정수 25,35를 얻어내기 위해서는 숫자로 분리해내는 알고리즘이 필요합니다. 문자열을 다룰때 이러한 작업이 자유자재로 동반되어야 문제를 잘 해결할수있기때문에 이번 포스트에서 다루어보겠습니다. 1. 문자열에서 문자와 숫자를 분리하기 문제는 다음과 같습니다. 문자열을 입력받고 영문자는 영문자끼리 모아서 하나의 배열에 담고, 숫자는 문자열에 등장한 각 숫.. 2020. 10. 5.