摘要:
《OOC》笔记(4)——自动化地将C#代码转化为C代码(结构版) 我在《C表达面向对象语言的机制——C#版》中已经说明了从C#到C的转换方法。这次看《OOC》也是想对比一下看看有没有更好的设计思路。结果有点失望。要写这个程序还是有点费时间的。我得抓紧学算法了,这个程序先放一放。本篇就占个坑好了。 阅读全文
摘要:
C语言中赫赫有名的printf函数,能够接受的参数数目不固定,这就是变长参数。C#里也有params这个关键字用来实现变长参数。本介绍如何用C实现一个能接受变长参数的函数。 阅读全文
摘要:
实际可用的异常机制需要有运行时(Runtime)的支持。也就是说单纯的C语言是不能提供像C#、Java那样的异常捕获机制的。setjmp.h里的setjmp(jmp_buf);和longjmp(jmp_buf, int);这两个函数很特别。setjmp将当时的CPU状态存入jmp_buf,longjmp将jmp_buf中的内容恢复到CPU。 阅读全文