C & LINUX

C / LINUX scanf(3) fscanf(3) sscanf(3)

Ocean_ 2022. 5. 2. 14:06

 

함수 기능

데이터를 foramt에서 지시하는 대로 서식화 변환하여 입력 받는 라이브러리 함수

fscanf

fp가 가리키는 파일에 입력

sscanf

파일이 아닌 인자 buf가 가리키는 문자 배열에서 읽음

함수 원형

#include <stdio.h>
int scanf(const char *format, ...);
int fscanf(FILE *fp, const char *format, ...);
int sscanf(const char *buf, const char *format, ...);

함수 파라메터

format

형식지정자

buf

문자열을 저장할 buf

함수 예제

fscanf

#include<stdio.h>
#include<stdlib.h>

#define BUFFER_SIZE 1024

int main(void){
    char *fname = "ssu_test.dat";
    char name[BUFFER_SIZE];
    FILE *fp;
    int age;

    fp= fopen(fname,"r");
    fscanf(fp,"%s%d",name, &age);
    fclose(fp);
    fp = fopen(fname,"w");
    fprintf(fp,"%s is %d years old\n",name,age);
    fclose(fp);
    exit(0);
}

함수 결과

fscanf

 

리눅스시스템 프로그래밍 - 홍지만 저

교재 내에 있는 예제를 바탕으로 작성한 글 입니다.