我的程序必定会使用C/C++的系统函数,我们可以使用静态库的方式(/MT)使用这些函数,也可以使用动态库的方式(/MD)使用这些函数。MT,链接时需要LIBCMT.lib;MD,链接时需要MSVCRT.lib ,运行时需要 MSVCR80.DLL。

各种 C 运行时库的区别
( 1 )静态链接的单线程库
静态链接的单线程库只能用于单线程的应用程序, C 运行时库的目标代码最终被编译在应用程序的二进制文件中。通过 /ML 编译选项可以设置 Visual C++ 使用静态链接的单线程库。
( 2 )静态链接的多线程库
静态链接的多线程库的目标代码也最终被编译在应用程序的二进制文件中,但是它可以在多线程程序中使用。通过 /MT 编译选项可以设置 Visual C++ 使用静态链接的多线程库。
( 3 )动态链接的运行时库
动态链接的运行时库将所有的 C 库函数保存在一个单独的动态链接库 MSVCRTxx.DLL 中, MSVCRTxx.DLL 处理了多线程问题。使用 /MD 编译选项可以设置 Visual C++ 使用动态

多线程(/MT) 多线程调试(/MTd) 多线程 DLL (/MD) 多线程调试 DLL (/MDd)

C 运行时库

库文件

Single thread(static link) ML

libc.lib

Debug single thread(static link) MLd

libcd.lib

MultiThread(static link) MT

libcmt.lib

Debug multiThread(static link) MTd

libcmtd.lib

MultiThread(dynamic link) MD

msvert.lib

Debug multiThread(dynamic link) MDd

msvertd.lib

VS2005配置运行时库

如果出错#error :  Please use the /MD switch for _AFXDLL builds ,请先配置常规。

C运行时库(C Run-Time Libraries)的更多相关文章

  1. Visual C++中对运行时库的支持

    原文地址:http://blog.csdn.net/wqvbjhc/article/details/6612099 一.什么是C运行时库 1)C运行时库就是 C run-time library,是 ...

  2. C运行时库(C Run-time Library)详解(提供的另一个最重要的功能是为应用程序添加启动函数。Visual C++对控制台程序默认使用单线程的静态链接库,而MFC中的CFile类已暗藏了多线程)

    一.什么是C运行时库 1)C运行时库就是 C run-time library,是 C 而非 C++ 语言世界的概念:取这个名字就是因为你的 C 程序运行时需要这些库中的函数. 2)C 语言是所谓的“ ...

  3. [转帖]运行时库(runtime library)

    运行时库(runtime library) https://blog.csdn.net/xitie8523/article/details/82712105 没学过这些东西 或者当时上课没听 又或者 ...

  4. VC 运行时库的引用区别 /MD、/MDd 和 /MT、/MTd和DllMain函数

    /MT和/MTd表示采用多线程CRT库的静态lib版本.该选项会在编译时将运行时库以静态lib的形式完全嵌入.该选项生成的可执行文件运行时不需要运行时库dll的参加,会获得轻微的性能提升,但最终生成的 ...

  5. VC 运行时库 /MD、/MDd 和 /MT、/MTd

    这里总结下他们的区别,后面的那个'd'是代表DEBUG版本,没有'd'的就是RELEASE版本了. 首先说/MT /MT是 "multithread, static version ” 意思 ...

  6. /MD, /MDD, /ML, /MT,/MTD(使用运行时库)

    1. VC编译选项 多线程(/MT)多线程调试(/MTd)多线程 DLL (/MD)多线程调试 DLL (/MDd) 2. C 运行时库                                 ...

  7. VC C运行时库(CRTL)的几个版本及选用

    分类: Windows 2008-12-23 10:01 987人阅读 评论(0) 收藏 举报ciostreammfclibrary多线程import最近做项目碰到了一个关于在动态库中使用MFC以及在 ...

  8. 定位vc运行时库问题 依赖问题,屡试不爽的一招

    用vc 菜单 文件| 打开|指定EXE或DLL,如有指定运行时库,则PE文件的资源中可以看到manifest 配置节 然后据此判断EXE依赖的运行时库, 再根据编译选项调整 运行时库设置

  9. /MD、/MT、/LD( 使用 多线程版本 运行时库的C runtime library)

    /MD./MT./LD(使用运行时库)(微软官网解释) Visual C++ 编译器选项 /MD./ML./MT./LD 区别 指定与你项目连接的运行期库 /MT多线程应用程序 /Mtd多线程应用程序 ...

  10. vs2015部署---下一代VC运行时库系统:the Universal CRT

    前言 其实the Universal CRT(通用C运行时库)已经不能算是“下一代”,因为它已经在前两年伴随着Visual Studio 2015和Windows10发布.但是由于之前使用VS2015 ...

随机推荐

  1. 1045 Access denied for user 'root'@'localhost' (using password: YES) -九五小庞

    MySQL 连接错误,使用Navicat连接MySQL出现错误:1045 Access denied for user 'root'@'localhost' (using password: YES) ...

  2. Unity中Inspector面板显示提示

    效果如下 上面有个 "可选变量"  ,然后鼠标移动到变量上会显示一段文字 实现方法 [Header("可选变量")]//直接显示汉字在面板上 [Tooltip( ...

  3. CF1930D1 - Sum over all Substrings (Easy Version)

    对于每一个 \(f(i, j)\),我们考虑如何计算.我们发现,\(\texttt{1010}\) 式的字符串很有用,所以这启发我们如果遇到了一个模式 \(p_i = \texttt{'1'}\),那 ...

  4. 实操使用 go pprof 对生产环境进行性能分析(问题定位及代码优化)

    简介 最近服务器有个小功能 go 进程 内存占用突然变得很高,正好使用 go pprof 实操进行性能分析排查解决 这是个极小的服务,但是占用内存超过了 100MB,而且本身服务器内存就比较吃紧,因此 ...

  5. Redux 状态容器、管理

    当你越来越有能力时,自然会有人看得起你:改变自己,你才有自信,梦想才会慢慢的实现.喷泉之所以漂亮是因为她有了压力:瀑布之所以壮观是因为她没有了退路:水之所以能穿石是因为永远在坚持. 首先我们要明确一个 ...

  6. 使用MobileNetV3模型识别农作物病虫害(通过叶子)

    项目地址:MobileNetV3-for-leaf 项目背景: 早期曾在嵌入式设备 RV1106 上实现过植物病害识别模型,但由于设备性能与数据集限制,识别效果一般.本项目基于更完善的数据与资源,重新 ...

  7. Java程序员应知应会,为什么现在我们不用Servlet了?

    https://www.163.com/dy/article/H84P8CPU055368QG.html 每个学习Java的同学都会从Servlet开始学习.Servlet API发表于1998年,可 ...

  8. 量子计算新突破:Ocelot芯片实现高效纠错架构

    量子芯片Ocelot技术突破 某机构今日正式发布第一代量子芯片Ocelot,这是首个基于玻色量子纠错的可扩展硬件实现方案.该芯片采用超导量子电路技术,取得三项关键进展: 实现可扩展的玻色纠错架构,显著 ...

  9. PPT(五)-编辑顶点

    编辑顶点和合并形状这两个其实是不可分割的两兄弟,合并形状时将多个形状进行组合剪切掏空等变成一个形状.编辑顶点是针对某个形状进行特别的调整 一.编辑顶点怎么玩 (1)先要有一个形状 选中形状->右 ...

  10. vue 配置二级目录以及nginx多网站配置

    在vue.config.js module.exports = { publicPath: '/adm/', // 二级目录 devServer: { open: true, port: 8888 } ...