CSDN专家博客精华版

为人民服务!
  首页  :: 新随笔  :: 管理
上一页 1 ··· 385 386 387 388 389 390 391 392 393 ··· 520 下一页

2007年12月17日

摘要: 在LCC里分析下面的语句:#005 int nTest1 = 1;就需要把1生成一个常量树节点,那么在LCC里用怎么样的流程来创建这个树节点的呢?这个过程大体是这样的:当碰到赋值符号后,就需要分析表达式,于是调用函数获取记号函数CCaiCompiler::Instance()->GetLex()->GetToken(),接着下来就调用构造常量符号项的函数Symbol CCaiLex::ico... 阅读全文

posted @ 2007-12-17 10:26 csdnexpert 阅读(108) 评论(0) 推荐(0)

摘要: #001 //#002 void walk(Tree tp, int tlab, int flab) #003 {#004 //创建DAG森林.#005 listnodes(tp, tlab, flab);#006 #007 //如果DAG森林生成.#008 if (forest) #009 {#010 Node list = forest->link;#011 ... 阅读全文

posted @ 2007-12-17 10:26 csdnexpert 阅读(83) 评论(0) 推荐(0)

摘要: 符号表是用来保存每个符号信息的,因为编译器分析源程序的过程会生成很多符号的属性,后端根据这些属性来生成合适的指令和代码的格式。 #001 //符号表结构.#002 //#003 //蔡军生 2007/08/10 QQ:9073204#004 //#005 struct symbol #006 {#007 char *name; //符号的名称,大多数情况是源程序的符号.#008 int s... 阅读全文

posted @ 2007-12-17 10:26 csdnexpert 阅读(109) 评论(0) 推荐(0)

摘要: 因为LCC后端可以生成不同机器结构的代码,所以需要定义后端的接口结构,当不同的模块实现这些接口时,就可以实现不同的机器代码生成。下面就是这个接口的结构定义注释。 #001 //后端代码生成的接口.#002 typedef struct interface #003 {#004 //数据类型.#005 Metrics charmetric;#006 Metrics shortmetric... 阅读全文

posted @ 2007-12-17 10:26 csdnexpert 阅读(117) 评论(0) 推荐(0)

摘要: 前面已经介绍创建分析树,下面就来详细地说明一个例子,看看到底生成什么样的分析树,C源程序如下:#005 int nTest1 = 1;#006 int nTest2 = 2;#007 int nTest3;#008 int i;#009 #010 nTest3 = nTest1 + nTest2; 把上面的源程序分析后,就生成下面的DAG树,如下:#2 ADDRLP4 coun... 阅读全文

posted @ 2007-12-17 10:26 csdnexpert 阅读(79) 评论(0) 推荐(0)

摘要: 文本输出,从来就是比较常用的方式,自从发明文字以来,就应缺少不了文字的显示了。在以前,是书写到白纸上,让别人看懂它。现在到了信息的时代,当然是显示在屏幕上,即使你是不懂书法的,也可以显示出惊人的书法文字出来。在窗口里显示文字出来,就可以使用TextOut函数,当然不只这一个API函数可以显示字符了。TextOut函数是使用当前设备的属性来显示文字的,比如设备属性有字体类型,字体的颜色,字体背景... 阅读全文

posted @ 2007-12-17 10:26 csdnexpert 阅读(180) 评论(0) 推荐(0)

摘要: 当你看到Windows显示的按钮时,背景颜色是灰色的。当你看到缺省的窗口背景时,它是白色的。当你的老板需要你创建一个黑色背景的按钮时,你会怎么样做呢?其实在Windows里先用API函数CreateSolidBrush创建画刷,然后调用FillRect函数来填充背景。这样来,不管你需要什么样的背景,都随心所欲了吧。现在先来搞懂CreateSolidBrush函数,下次再来练习FillRect。... 阅读全文

posted @ 2007-12-17 10:26 csdnexpert 阅读(206) 评论(0) 推荐(0)

摘要: 前面已经介绍了全局函数和全局变量的声明处理,但全局变量的初始化,还没有详细地分析,现在就来干这件事情。比如编写C的程序,有如下的代码:#001 #002 int g_nTest = 100;#003 #004 int main(void)#005 {#006 int nTest1 = 1;#007 int nTest2 = 2;像第2行代码就是全局变量的声明和初始化在一起的,那么在LCC里... 阅读全文

posted @ 2007-12-17 10:26 csdnexpert 阅读(180) 评论(0) 推荐(0)

摘要: 上面已经介绍输出红色的字符串时,发现背景的黑色也变成白色了,这样的输出是破坏背景的。那需要使用什么方法来保持背景不变,而又能输出红色的字符串呢?比如按钮的文字颜色是黑色的,而背景是灰色的。这就需要使用SetBkMode函数来设置DrawText函数的输出方式,显示设备共有两种输出方式:OPAQUE和TRANSPARENT。OPAQUE的方式是用当前背景的画刷的颜色输出显示文字的背景,而TRAN... 阅读全文

posted @ 2007-12-17 10:26 csdnexpert 阅读(111) 评论(0) 推荐(0)

摘要: 文字的出现历史可以追溯到甲骨文的使用,直到今天使用的宋体文字。在软件开发里,经常遇到是跨国语言的使用,由于世界在变平,全球在变小,交通运输非常发达,由我所在的深圳,向东坐飞机12个小时就可以到达伦敦,向西坐飞机12小时就可以到达美国,可算得上朝发夕至。比如像炒外汇的人,一天可以不用睡觉都在工作着,比如早上炒东京的汇市,下午就可以炒伦敦的,晚上就可以炒纽约的了。软件的开发,也在全球化,比如昨晚在... 阅读全文

posted @ 2007-12-17 10:26 csdnexpert 阅读(240) 评论(0) 推荐(0)

上一页 1 ··· 385 386 387 388 389 390 391 392 393 ··· 520 下一页