我开始用C编程,我有 Visual Studio 2012。
我在Win32 ConsoleApplication中编写我的程序,当我查看项目中的Debug时,有一个EXE文件,它可以工作,但是当我尝试从其他计算机上运行它而不运行Visual Studio时工作
我能做些什么让它发挥作用?
谢谢,Tomas。
答案 0 :(得分:0)
转到项目属性然后:C / C ++ - >代码生成 - >运行时库,然后根据您的配置选择MT或MTD选项(对于版本MT和调试MTD)
答案 1 :(得分:0)
标准C函数如printf,fopen和strlen由编译器供应商在预编译库和DLL中提供。项目中的默认设置是不将所有标准函数直接链接到程序中,而是将它们保存在一个额外的DLL中,让编译的程序只使用该DLL。在使用Visual Studio的计算机上存在DLL。在你的另一台机器上没有DLL。
有两种方法可以解决这个问题:
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\redist
并将所需的DLL复制到目标计算机。Microsoft更喜欢DLL的原因是,对于DLL,您可以在每个使用相同DLL的文件夹中包含多个小程序。如果静态链接,你最终会得到多个更大的程序,每个程序都有相同的功能。