2011-04-09 50 views
0

我有editbin msvcprt並尋找scanf例如,但我找不到它。msvcprt和crt

這是否意味着crt不是封裝在msvcprt中? 這是否意味着cin函數不使用scanf?

回答

1

有兩個庫:C運行庫(稱爲「CRT」)和標準C++庫。 scanf函數是CRT的一部分,而不是標準C++庫。

當您編譯C++程序時,CRT和標準C++庫都會自動鏈接。您可以在MSDN上的C Run-Time Libraries文檔中閱讀有關哪些庫鏈接的詳細信息。

在此特定情況下,標準C++庫(/MD /多線程DLL)的msvcprt.lib版本的相應CRT庫爲msvcrt.lib。

+0

爲什麼在您構建Cpp軟件時將CRT鏈接在一起?這需要什麼?在CRT中有什麼不在標準C++庫中? – Guillaume07 2011-04-09 19:24:20

+0

告訴我,什麼是「Cpp軟」?你一直在談論這個。 – sehe 2011-04-09 21:13:42

+1

@ Guillaume07:使用Visual C++,C和C++程序都使用CRT。標準C++庫建立在CRT之上並使用CRT。 – 2011-04-09 21:15:55

1

您正在使用錯誤的工具錯誤的文件。使用dumpbin.exe和msvcrt.lib