用C++实现了一部分CRT,不想写了,开源给大家参考参考~~~
如题... 下载地址
包里包含了VC9的可执行程序,我的开发环境,我实现的全部CRT代码,和测试代码.
实现了单线程的静态库.目前只支持可执行程序的入口.
实现的功能有:
1.CRT及C++的初始化,清理.
2.基本的内存管理(直接转发WIN32接口,我什么都没做^_^)
3.基本的文件流(只实现了一部分).
4.一部分字符串操作函数.
5.CRT的SEH支持.
6.C++异常支持.
7.对可变参数的支持.
8.CRT中long long/unsigned long long的支持函数.
基本上,CRT实现中的拌脚石都已经清除了.剩下的多半是体力活了...
其中,异常处理的实现部分是独此一份...
因为MS的CRT源代码里没有这些.网上也找不到相关实现代码.比较有参考意义.
VC的long long系列函数性能比较有问题.我在这里重新实现了这部分代码.
跑我的测试代码,性能是VC自带库的3倍.
另外,alloca要stack frame支持,但我还没搞清楚加什么修饰能强制让编译器在调用alloca时生成stack frame.
哪位大大知道,还请告知.不限编译器...(我搭的框架基本上是可以跨平台的)
包里包含了VC9的可执行程序,我的开发环境,我实现的全部CRT代码,和测试代码.
实现了单线程的静态库.目前只支持可执行程序的入口.
实现的功能有:
1.CRT及C++的初始化,清理.
2.基本的内存管理(直接转发WIN32接口,我什么都没做^_^)
3.基本的文件流(只实现了一部分).
4.一部分字符串操作函数.
5.CRT的SEH支持.
6.C++异常支持.
7.对可变参数的支持.
8.CRT中long long/unsigned long long的支持函数.
基本上,CRT实现中的拌脚石都已经清除了.剩下的多半是体力活了...
其中,异常处理的实现部分是独此一份...
因为MS的CRT源代码里没有这些.网上也找不到相关实现代码.比较有参考意义.
VC的long long系列函数性能比较有问题.我在这里重新实现了这部分代码.
跑我的测试代码,性能是VC自带库的3倍.
另外,alloca要stack frame支持,但我还没搞清楚加什么修饰能强制让编译器在调用alloca时生成stack frame.
哪位大大知道,还请告知.不限编译器...(我搭的框架基本上是可以跨平台的)
...全文
相关推荐
cpp-CRTSim轻量级的开源CRT显示模拟器效果
总之,cpp-CRTSim是一个面向C++开发者的开源工具,它提供了轻量级的CRT显示器效果模拟,可以帮助用户在现代设备上实现复古的视觉体验。
C++中关于Crt的内存泄漏检测的分析介绍
本文将深入探讨如何在C++环境中利用Crt(C运行时库)进行内存泄漏检测。
VC6.0中缺少VC98\\CRT\\SRC文件夹的---CRT.rar
该项目提供了Visual C++ 6.0中缺失的VC98\CRT\SRC目录下的核心C运行时库源代码,包含abort、abs、access、asctime等标准函数实现,用于调试、学习或修复因缺少CR
mcrt - 简单的CRT实现原型代码
**标签解析:**- "CRT":指的是C运行时库,是C/C++编程中不可或缺的一部分。
创自CRT310读卡器动态库
压缩包中的“CRT310_UR04_SRC”可能包含以下内容:1. 源代码文件:可能包含.cpp和.h文件,分别对应C++源代码和头文件,提供了库的实现和接口声明。2.


