收录日期:2019/08/19 20:46:25 时间:2016/05/30 10:06:40 标签:C语言
以前只是听说过,不知道具体是个什么东西!

(C Runtime Library是用标准C开发的实用函数集)如果多线程程序中使用了标准C库函数,并用CreateThread()和ExitThread(),则会导致内存泄漏。解决这个问题的方法是用C运行库(run-time library)函数来启动和终止线程,而不用WIN32 API定义的CreateThread()和ExitThread()。在C运行库函数中,它们的替代函数分别是_beginthreadex()和_exitthreadex(),需要的头文件是_process.h。在VC6.0下,还需在Project->Settings->C/C++->Code Generation中选择Multithreaded Runtime Library。当然,也可以通过避免使用C标准库函数的方法来解决上述问题,WIN32提供了一些C标准库函数的替代函数,例如,可用wsprintf()和lstrlen()来代替sprintf()和strlen()。这样,使用CreateThread()和ExitThread()不会出现问题。
运行期库是一个广泛的概念,可以认为是一套系统级的函数库,这些函数要么在后台被使用,比如进行程序的初始化和清理操作,要么是我们会直接调用到的,比如内存管理中的malloc、数学计算中的sqrt等

所谓运行期,就是在程序运行时使用,离开了它,我们的程序寸步难行
也就是说,运行期库构建了一个程序运行的软件环境(当然还有操作系统)
正常的库在我们link的时候会编译到我们的目标程序中去,这样一来我们的目标程序就可以独立运行了。可是这样的毛病就是随便一个简单的目标程序都可能会非常大(因为包含了所有需要的库),所谓的运行库就是解决这样的问题的,它不编译到我们的目标程序中去,这样一来目标程序不可以独立运行,需要相应的运行库,好处就是目标程序非常小。
说的还是不完全一致的!
懂了一点点!!
to ckc(火):
   你说的问题是用动态连接库和静态连接库来解决的,在Windows平台下,C Run-time Library的情况如下:
                  动态连接库      导出库文件        静态连接库
Release版      msvcrt.dll        msvcrt.lib         libc.lib(单线程), libcmt.lib(多线程)
Debug版        msvcrtd.lib       msvcrtd.lib        libcd.lib(单线程),libcmtd.lib(多线程)
可以看看这个地址:http://blog.csdn.net/han012/archive/2001/08/30/11878.aspx
里面讲的还算清楚。

selenium的一个错误,java下可行,php下不行 请教一个语句怎么写?谢谢! 结构体的二级指针疑点 图片位置 关于DBCHART的问题 急求长辈生日宴的祝词 有些mpg视频文件打开以后,进入不了回调函数是怎么回事 求 用C#和三层架构 做的财务管理系统 由俄罗斯方块推出的问题 时间转换的问题 难难难!!!!!!!!求高手了! 伟福仿真器使用问题 插入的html代码被屏蔽没有显示出来,求助 多表查询修改,有点烦 一个应用程序打包安装到另一台电脑上后,关闭主窗体时为什么总是不马上退出该程序 单学好VB.NET和C语言能找得到工作吗?有这方面的工作人告诉我一下好不? 帮忙做两道Java题 jsp弹出新页面,提交表单数据给老页面 提取页面链接,程序崩溃 请教一个java应用程序 存储过程调用存储过程 根据一个基础表整理后台数据库存储需要的表,有测试数据 j2me访问通讯录有限制,symbian c++没有限制吧? C++ 急求一个Spring+Hibernate对MySQL数据库进行增删改查的例子!!!! C程序字符数组输入输出问题,期待精通C的师兄指点 exe4j生成的exe文件运行出错?? js判断重复值问题 请教一个java的应用程序 请大家为我指明学习方向