我想看看 printf (以及许多其他函数)是如何工作的。
我写了
#include <Windows.h>
#include <stdio.h>
int main()
{
printf("");
return 0;
}
在main.c代码中并在右键菜单中转到定义
但它显示了类似的东西
_Check_return_opt_ _CRTIMP int __cdecl printf(_In_z_ _Printf_format_string_ const char * _Format, ...);
#if __STDC_WANT_SECURE_LIB__
_Check_return_opt_ _CRTIMP int __cdecl printf_s(_In_z_ _Printf_format_string_ const char * _Format, ...);
#endif
我找不到任何有关 printf 如何工作的提示。
有人可以让我知道如何学习标准库的实现吗?
Windows SDK 的源代码
printf
是通用 CRT 的一部分,其源代码可以在 上找到
C:\Program Files (x86)\Windows Kits\10\Source\<SDKversion>\ucrt
看看
__stdio_common_vfprintf
上的 stdio\output.cpp
。使用 SDK 版本 10.0.22000.0 进行测试。