사용범위
Windows, Unix 등 모든 OS에서 사용가능한 표준 API 함수
기능
C언어 표준 함수로 FILE 로부터 데이터를 한줄씩 읽어서 문자열로 저장한다.
헤더
#include <stdio.h>
※ fgets 함수 사용시 stdio.h 파일을 include 하지 않는다면 컴파일시 error 발생 ※
함수
char* fgets(char* str, int num, FILE* file);
파라미터
- char* str
- FILE* 로부터 읽은 데이터를 저장할 버퍼를 입력한다.
- int num
- 한번에 읽을 데이터의 최대 문자수를 입력한다. (NULL 문자를 포함한 숫자)
- FILE* file
- fopen 함수를 통해 얻은 FILE의 포인터를 입력한다.
반환값
성공시 fgets 를 통해 읽은 buffer인 str을 반환한다.
실패시 null 포인터를 반환한다.
< test.txt >
Hello fgets
<소스 코드>
#include <stdio.h>
#define MAX_BUF_SIZE 128
int main() {
FILE* fp;
char* ret = NULL;
char buffer[MAX_BUF_SIZE] = {0,};
fp = fopen("test.txt", "r");
if (fp != NULL) {
ret = fgets(buffer, MAX_BUF_SIZE - 1, fp);
if (ret != NULL) {
printf("%s\n", buffer);
printf("%s\n", ret);
} else {
// fgets 함수 실패 !
}
fclose(fp);
}
return 0;
}
※ 실행 결과
Hello fgets
Hello fgets
반응형
'C언어 > stdio.h' 카테고리의 다른 글
[C언어] fclose 함수 (stdio.h) (0) | 2022.08.02 |
---|---|
[C언어] fopen 함수 (stdio.h) (1) | 2022.08.01 |
[C언어] fputs 함수 (stdio.h) (0) | 2022.07.28 |
[C언어] scanf 함수 (stdio.h) (0) | 2022.07.24 |
[C언어] printf 함수 (stdio.h) (0) | 2022.07.24 |