一天一个C Run-Time Library 函数(4) abs _abs64
本文解析C/C++绝对值函数abs,对比了C和C++对不同类型的处理差异,并分析了其简单实现,指出该函数常被编译器内联优化。
本文解析C/C++绝对值函数abs,对比了C和C++对不同类型的处理差异,并分析了其简单实现,指出该函数常被编译器内联优化。
C函数abort()通过引发SIGABRT信号来终止程序。文章对比了其在Windows和Linux下的不同表现,并讲解了如何用signal函数捕获此信号,最后探讨了跨平台使用信号的挑战。
本文介绍了微软C库的非标准函数__max和__min,它们是宏。文章分析了宏的效率与风险。
本文剖析了C函数__isascii与__toascii,对比了MS与GCC的实现差异,并测试性能,发现二者效率相近。
继续为windows/linux通用服务器框架做研究工作,从C语言运行时库开始。
最好的可移植编程方式是什么?除了java。。。还有C。。。。,标准C是可以在几乎任何有C语言编译器的机器上运行的,这是lua作者只用标准C开发lua的原因,并谈到了lua可移植性好的理由。他说除了动态链接的模块,他用的几乎都是标准C。
呵呵,是关于lua stdlib 库的set模块的bug,其实作者好像确认很久了。。。。但是我这段时间一直没有上gmail,所以没有看到。。。作者说,在新版中已经修改此bug…今天下了最新版,发现真是这样:)呵呵,真高兴啊,吸收了开源社区的那么多营养。。。总算有点报答了。。。当然,这仅仅是起步:)
实际流程贴一下。。。满足一下虚荣心。。。其实仅仅是一个很小的很容易发现的bug。。。呵呵,我当时学lua才一两周。。也不可能发现多么难的bug….lol
最近一段时间学了很多东西,因为时间只有这么多,工作时间太长,空闲时间太少,虽然我几乎用了全部的空闲时间来学习,
但是还是相对而言忽略了实践。
最近看了《lua程序设计》,《python核心编程》,《bash高级编程》,几乎是新学了3门语言(就是python以前还学过一些),
而实际实践的内容无非就是跟着数本简单的敲敲代码,远远不够。。。。接下来应该可以脱离纯粹的语言学习阶段。。。多多实践一下了,这样的阶段应该博客也会多写一些的:)光看书实在没有什么太多好写的:)
计划是一边重新学习数据结构。。。(不知道是第几次重新了,没有一次真正的做到看透全书,做完全部习题。。。。)
一般用上述3种语言+c/c++(吃饭的家伙)来完成学习中的突然想法:)比如以前提到的makefile自动生成和linux/windows通用服务器开发库。。。。。
解决方法竟然是。。。。。。。在xp下安装的文件全部打包。。。。然后后放到vista下再解压就可以在vista下用了。。。彻底无语。。。。问题看来和程序无关,仅仅是安装的问题。
假如你也一直开发的都是windows,linux下都能跑的程序,关于目录的使用你肯定就和我一样统一了,都是用”/”来表示。道理很简单,因为linux不支持”/”而windows支持”/”,一直以来都是这样,linux原生的”/”使用自然没有任何问题,windows下的fopen,CreateFile,OpenFile,CreateProcess等等使用的也不是一次两次了,用的也都没有问题。当然,今天,问题来了,一碰到就调试的人郁闷的要死。
分享一份个人vim配置,通过自定义快捷键和插件,打造了适合编程的高效环境,特别是对C/C++和Python的支持。