Chinaunix首页 | 论坛 | 博客
  • 博客访问: 69338
  • 博文数量: 24
  • 博客积分: 50
  • 博客等级: 民兵
  • 技术积分: 135
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-24 22:12
文章分类

全部博文(24)

文章存档

2013年(24)

我的朋友

发布时间:2013-03-02 10:39:24

分析和实现了带参函数的定义和调用的实现形式。......【阅读全文】

阅读(1097) | 评论(0) | 转发(0)

发布时间:2013-03-02 10:39:07

上篇我们介绍了一般形式的语句处理,现在我们来处理判断分支和循环。任意的循环语句,本身都可以改写成一系列执行语句再加上分支语句。......【阅读全文】

阅读(978) | 评论(0) | 转发(0)

发布时间:2013-03-02 10:38:54

上一篇描述了函数调用的逻辑,现在可以在这种设计思想下,继续提高完成度。我们使用两种不同数据结构分别描述和存储句子的语义,以及数据的值。在存储的时候,将二者区分开来,计算时,将语句翻译成正确的计算逻辑,计算出每个句子的正确的值。......【阅读全文】

阅读(925) | 评论(0) | 转发(0)

发布时间:2013-03-02 10:36:55

最近在学习编译原理,于是准备自己动手写一个脚本语言。准备用一些文章记录其中遇到的问题和解决的方法。这些文章需要有一些编译原理,YACC, LEX的储备知识。关于这些知识,使用方面的部分可以简单的通过网络上的文章得到,更详细的原理,需要参考《编译原理》(龙书)。......【阅读全文】

阅读(1409) | 评论(0) | 转发(0)

发布时间:2013-01-08 10:08:44

先看一个经典的面试题:#include <stdio.h>#define f(a,b) a##b#define g(a) #a#define h(a) g(a) int main(){ printf("%s\n", h(f(1,2))); printf("%s\n", g(f(1,2))); return 0;}输出是:12f(1,2)原因就是宏替换的原则问题:当一个宏参数被放进宏体时,通常(注意,有例外)这个宏参数会首先被全部展开。当展开后的宏参数被放进宏体时,预处理器对新展开的宏体进行第二次扫描,并继续展开。例如:#define P......【阅读全文】

阅读(870) | 评论(1) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册