programing

C의 printf 함수 코드

firstcheck 2021. 1. 15. 08:17
반응형

C의 printf 함수 코드


중복 가능성 :
c / c ++ 함수의 소스 코드

나는 내가 printf ( "Hello World!");를 작성할 때 사용되는 C 코드를 어디서 찾을 수 있는지 궁금합니다. 내 C 프로그램에서 해당 문자열을 STDOUT에 인쇄해야 함을 알 수 있습니다. <stdio.h>를 살펴 보았지만 프로토 타입 int printf (const char * format, ...) 만 찾을 수 있었지만 내부적으로는 어떻게 생겼는지 알 수 없습니다.


여기에서의 GNU 버전입니다 printf... 당신은 전달 볼 수 stdoutvfprintf:

__printf (const char *format, ...)
{
   va_list arg;
   int done;

   va_start (arg, format);
   done = vfprintf (stdout, format, arg);
   va_end (arg);

   return done;
}

여길 봐.

여기 에 링크 가 있습니다 vfprintf... 모든 형식화 '마법'이 여기에서 발생합니다.

이러한 함수에 대해 진정으로 '다른'유일한 점은 가변 길이 인수 목록의 인수를 가져 오기 위해 varargs를 사용한다는 것입니다. 그 외에는 전통적인 C입니다. (이것은 printf컴파일러의 특정 지원으로 구현되는 Pascal의 동등한 것과는 대조적입니다 ... 적어도 과거로 돌아 왔습니다.)

참조 URL : https://stackoverflow.com/questions/4867229/code-for-printf-function-in-c

반응형