我是Microsoft Visual Studio用户.我的问题是关于"C/C++运行时库".
我用".cpp"源文件"main.cpp"创建了一个"空项目",其中包含以下代码:
#include <iostream>
int main(void)
{
std::cout << "Hello World" << std::endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
"iostream是一个头文件,用于C++编程语言的输入/输出.它是C++标准库的一部分."
"C/C++运行时库"和"C/C++标准库"之间有区别吗?
我如何知道"C/C++运行时库"库是静态还是动态链接到项目?
我如何知道这个库在文件系统中的位置?
如果"C/C++运行时库"动态链接到项目,我怎么知道使用了哪个".dll"以及用过的".dll"在文件系统中的位置?
假设我将"C/C++运行时库"静态链接到项目,我可以确定从源代码生成的可执行文件可以在所有Windows平台上运行(XP/Vista/Seven/...,32位/ 64位)?
将"C/C++运行时库"动态链接到项目有哪些优点/缺点?
"C/C++运行时库"应该静态地还是动态地链接到项目?
几个问题:
是否正确理解MinGW本质上是采用gcc源并将其编译为windows的可执行文件,即gcc.exe?
MinGW wiki说"MinGW另一方面提供了Win32 API提供的功能." 这让我很困惑.默认情况下,Windows安装是否已提供公开Win32 API的Win32 API标头,这会使MinGW再次提供冗余?MinGW标题是否与Windows安装的标题不同?
当我有一个由MinGW gcc编译的目标文件时,我可以将它链接到Windows上的C运行时库吗?我想不是因为MinGW gcc生成的目标文件可能与Windows上的C运行时库不兼容(就像使用相同的调用约定).
由于新的运行时库不在每台计算机上,因此需要下载可再发行组件,我知道我可以使用某种安装程序执行此操作,但这非常麻烦.
那么我是否只有一种方法可以使用每台计算机上的旧运行时库来构建我的项目?
或者,如果我下载旧版本的可视工作室并在那里构建项目来创建发布,那么它是否可以正常工作?如果这是可能的,这是最好的方法吗?
注意:静态链接库是不可能的.