C Runtime Library来历, API, MFC, ATL关系
转载自:http://www.cnblogs.com/chio/archive/2007/11/26/972152.html
CRT原先是指Microsoft开发的C Runtime Library,用于操作系统的开发及运行。后来在此基础上开发了C++ Runtime Library,所以现在CRT是指Microsoft开发的C/C++ Runtime Library。在VC的CRT/SRC目录下,可以看到CRT的源码,不仅有C的,也有C++的。
CRT原先的目的就是支持操作系统的运行。因为Windows操作系统除汇编部分外,都是用C/C++编写的,所以内核及许多关键服务都在CRT上运行(它们都采用dll技术动态链接)。此外,用 VC编写的C/C++程序也用到它们(可以动态链接,也可以静态链接,前者运行时需要系统中已安装CRT的dll,后者不需要)。可以说,CRT就是 Microsoft编写Windows时使用的低层类库。然后,它又被当作C++标准库的一个实现包含在了VC系列中;我们在VC中使用的C++标准库,其实就是CRT的一个真子集(少了C++标准所不包含的代码,特别是大量的低层C代码)
至于CRT与WINDOWS API的关系,与许多人理解的相反,WINDOWS API作为Windows的一部份,是在CRT的基础上开发的。你可以将Windows(及其API)看作一个项目,而这个项目使用的语言是汇编/C/C ++,使用的类库就是CRT。所以,离开CRT,Windows API也无法使用的。
C++标准,是C++的通用语言规范,指导所有C ++使用者。而CRT的其中一部分可以看作是Microsoft开发的一个C++标准库实现(其实也确实如此,Microsoft在开发CRT时,参考了正在标准化过程中的C++语言规范)。它与C++标准有一定的差距,部分原因是,在C++没有完成标准化之前,CRT已经开发并投入使用了。为了向下兼容以前的Windows代码,早期的CRT与C++标准总有一定的差距。但是CRT确实在不断的改进中。VC6带的CRT与C++标准还有比较大的差距,而 VC8的几乎完全符合C++标准了。
综上,CRT(Microsoft's C/C++ Runtime Library)的一个真子集(主要是C++ Runtime Library)是一个符合(或至少是企图符合)C++标准的C++库。而Windows API(以及Windows的其他许多部分)都是在CRT的基础上开发的。
除了以上介绍的,在使用CRT的过程中,还需要了解的是:
1、CRT的一些组成部分也调用了Windows API。这可能就是有人认为CRT是
相关文档:
C++/C试题的答案与评分标准(来自于林锐的<<高质量C++编程指南>>),全文请到本博资源中下载.
一、请填写BOOL , float, 指针变量 与“零值”比较的 if 语句。(10分)
请写出 BOOL flag 与“零值”比较的 if 语句。(3分)
标准答案:
if ( flag )
&nb ......
stroul,
strdup
snprintf()
atio
C中常用字符串操作函数
#include <string.h>
size_t strlen(const char *s) 测量字符串长度s的实际长度。
例如s[20]="abc",那么strlen(s)的结果是3,而不是20.这就是实际长度
char *strcat(const char *s1, const *s2) ......
参看www.pgsqldb.org网站上的文档/客户端编程
需要链接libpq库,应包含头文件include/libpq-fe.h
路径要看你具体将postgresql安装在哪里啦
给你一个具体例子吧(从www.pgsqldb.org上copy的)!!!
&nb ......
1.概念
在C/C++中,对字符串的操作有很多值得注意的问题,同样,C/C++对时间的操作也有许多值得大家注意的地方。最近,在技术群中有很多网友也多次问到过C++语言中对时间的操作、获取和显示等等的问题。下面,在这篇文章中,笔者将主要介绍在C/C++中时间和日期的使用方法. ......
C 的开始
2010年2月10日,
开始阅读家里有关"C语言"的各种资料。
使用 TurboC2.0,偶尔可能也会用到 Microsoft Visual C++ 6.0。 ......