Universidad de Magallanes

Investigación


Dirección de Investigación


facebook twitter youtube
02 de agosto del 2019

fprintf_s 예제

여기서는 구문과 함께 C 언어로 라이브러리 헤더 stdio.h의 fprintf() 함수에 대해 알아봅니다. Souvik Saha가 제출한 2019년 1월 09일 콘솔에서 사용자가 입력한 직원 정보를 저장하는 파일 처리 예제를 살펴보겠습니다. 우리는 직원의 ID, 이름 및 급여를 저장하려고합니다. fprintf 외에도 fprintf_s에는 %n 지정기가 형식에 포함되지 않을 수 있으며 인수 목록의 %s 지정자에 해당하는 인수가 null 포인터가 아니어야 한다는 사실을 언급하는 추가 런타임 제약 조건이 있습니다. fwprintf_s는 fprintf_s의 와이드 문자 버전입니다. fwprintf_s에서 형식은 와이드 문자 문자열입니다. 이러한 함수는 ANSI 모드에서 스트림을 열면 동일하게 작동합니다. fprintf_s는 현재 유니코드 스트림으로 출력을 지원하지 않습니다. 지정된 위치에서 데이터를 로드하고, 문자열 문자열 등가물로 변환하고, 결과를 다양한 싱크에 기록합니다.

printf() 함수와 마찬가지로 fprintf() 함수는 파일 스트림에 인수 문 문자열을 작성하는 데 사용됩니다. fprintf() 함수를 통해 문자열을 작성하거나 저장합니다. 함수 fprintf()의 프로토타입은 다음과 같은 것입니다: int fprintf(FILE *filename, const char *문자열, .. . . . ; 결과는 인수가 가리키는 값에 기록됩니다. 사양에는 플래그, 필드 너비 또는 정밀도가 포함되지 않을 수 있습니다.

인수는 정수 지정자(i, d, o, u, x 및 X)에 대한 긴 int 또는 서명되지 않은 긴 int로 해석되며, 지정자 c 및 s. not-a-number가 nan 또는 nan(char_sequence)으로 변환되는 와이드 문자 또는 와이드 문자 문자열로 해석됩니다. 사용되는 것은 구현 정의입니다. C 라이브러리 함수 int fprintf (FILE *stream, const char *format, …) 스트림에 포맷 된 출력을 보냅니다. 부동 점 변환 함수는 무한을 inf 또는 무한대로 변환합니다. 사용되는 것은 구현 정의입니다. 인수는 문자 배열의 초기 요소에 대한 포인터여야 합니다. 정밀도는 기록할 최대 바이트 수를 지정합니다. 정밀도를 지정하지 않으면 첫 번째 null 종단기를 포함하지 않고 모든 바이트를 기록합니다.

l 지정기가 사용되는 경우 인수는 wchar_t 배열의 초기 요소에 대한 포인터여야 하며, 이 요소는 초기화 변환 상태가 0인 wcrtomb호출처럼 char 배열로 변환됩니다. 형식이 지정된 데이터를 스트림에 인쇄합니다. CRT의 보안 기능에 설명된 대로 보안 기능이 향상된 fprintf, _fprintf_l, fwprintf_l 버전입니다. . 정수 지정자 (D, i, O, U, X, X)에 대한 – 정밀도작성 할 숫자의 최소 수를 지정합니다. 작성할 값이 이 숫자보다 짧으면 결과는 선행 0으로 패딩됩니다. 결과가 더 길어도 값이 잘려지지 않습니다. 정밀도가 0이면 값 0에 대해 문자가 작성되지 않습니다. e, E 및 f 지정자의 경우: 소수점 다음으로 인쇄할 숫자의 수입니다. g 및 G 지정자의 경우: 인쇄할 중요한 숫자의 최대 수입니다. s의 경우: 인쇄할 문자의 최대 수입니다.

기본적으로 모든 문자는 끝 null 문자가 발생할 때까지 인쇄됩니다. c 유형의 경우: 아무런 효과가 없습니다. 정밀도가 지정되지 않은 경우 기본값은 1입니다. 정밀도에 대한 명시적 값 없이 마침표가 지정되면 0이 가정됩니다. 왼쪽은 지정된 필드 너비 내에서 정당화됩니다. 오른쪽 자리맞추기가 기본값입니다(너비 하위 지정기 참조). 고정 너비 문자 유형(int8_t 등)에 대한 올바른 변환 사양은 헤더 에 정의되어 있습니다(PRIdMAX, PRIuMAX 등은 %jd, %ju 등)과 동의어입니다. 정밀도는 표시할 최소 자릿수를 지정합니다. 기본 정밀도는 1입니다.

변환된 값과 정밀도가 모두 0이면 변환결과 문자가 없습니다. fprintf() 함수는 문자 집합을 파일에 쓰는 데 사용됩니다. 형식이 지정된 출력을 스트림으로 보냅니다.

inicio atrás arriba

DESTACADOS

  • LINKS


  • Dirección de Investigación

    Investigación • Avenida Bulnes 01890 • Punta Arenas • Chile
    Teléfono: +56 61 2 209 397 • Email: dir.investigacion@umag.cl