本文主要介绍可变参数的函数使用,然后分析它的原理,程序员自己如何对它们实现和封装,最后是可能会出现的问题和避免措施。
VA函数(variable argument function),参数个数可变函数,又称可变参数函数。C/C++编程中,系统提供给编程人员的va函数很少。*printf()/*scanf()系列函数,用于输入输出时格式化字符串;exec*()系列函数,用于在程序中执行外部文件(main(int argc, char* argv[]算不算呢,与其说main()也是一个可变参数函数,倒不如说它是exec*()经过封装后的具备特殊功能和意义的函数,至少在原理这一级上有很多相似之处)。由于参数个数的不确定,使va函数具有很大的灵活性,易用性,对没有使用过可变参数函数的编程人员很有诱惑力;那么,该如何编写自己的va函数,va函数的运用时机、编译实现又是如何。作者借本文谈谈自己关于va函数的一些浅见。阅读全文>
发表于 @ 2005年12月28日 13:39:00|评论(loading...)|编辑
Symbian Series 60的2.1中文版本的SDK是个比较不错的开发选择。最大的特色就是支持了TCP/IP Network,可以不用插件情况,很方便地进行网络模拟了。 不过2.1的中文版本在进行GBK转换到UNICODE的API似乎有个BUG。阅读全文>
发表于 @ 2005年12月16日 00:13:00|评论(loading...)|编辑
语言最早支持的注释只有一种,就是/* ... */。后来C++引入了//注释一行的功能。但是并不是所有的C语言编译器都支持//的注释风格,比如Turboc C就不支持。
如果要将用//注释的程序移植到不支持//注释的C语言编译器下编译,是件很麻烦的事情,因为//的注释太多了,手工不好修改。
Visual Studio支持用正则表达式来进行文本的替换功能。那么我们可以直接使用VS来进行批量转换了。
在VS中按Ctrl+H进入“替换”的对话框。然后选择“使用”正则表达式。在“查找内容”中输入: // {.*} ,在"替换为“中输入: /* \1 */,即可!
关于正则表达式的用法,我就不用多讲了,编译原理课程的开篇第一章就是讲解这个。
阅读全文>
发表于 @ 2005年12月03日 20:12:00|评论(loading...)|编辑
CLCD 1.1 it is, so I grabbed the source ball.
I downloaded eMbedded VC 4.0 from microsoft, and gave it a go at compiling the KVM. Right out of the tar ball, I got a few compile errors, which were missing dependencies: nativeFunctionTableWin.c ROMjavaWin.c
These files live in the tools/jcc directory, according to the dependency information, so I dove into that directory. In that directory, surprise, is a Makefile.
So I open up the make file and find that I need to generate those files, but it阅读全文>
发表于 @ 2005年12月01日 09:16:00|评论(loading...)|编辑