1 概述
  使用过以“#”号开头的预处理命令。如包含命令# include,宏定义命令# define等。在源程序中这些命令都放在函数之外, 而且一般都放在源文件的前面,它们称为预处理部分。
  所谓预处理是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的工作。预处理是C语言的一个重要功能, 它由预处理程序负责完成。当对一个源文件进行编译时, 系统将自动引用预处理程序对源程序中的...
                            
                            
                                分类:
其他好文   时间:
2014-07-01 07:31:24   
                                阅读次数:
233
                             
                    
                        
                            
                            
                                看完《C陷阱与缺陷》,忍不住要重新翻一下,记录一下与自己的惯性思维不符合的地方。记录的是知识的增量,是这几天的流量,而不是存量。这本书是在ASCI C/C89订制之前写的,有些地方有疏漏。第一章 词法陷阱1.3 C语言中解析符号时使用贪心策略,如x+++++y将被解析为x++ ++ +y,并编译出错...
                            
                            
                                分类:
其他好文   时间:
2014-06-30 23:20:10   
                                阅读次数:
343
                             
                    
                        
                            
                            
                                看完《C陷阱与缺陷》,忍不住要重新翻一下,记录一下与自己的惯性思维不符合的地方。记录的是知识的增量,是这几天的流量,而不是存量。
这本书是在ASCI C/C89订制之前写的,有些地方有疏漏。
第一章 词法陷阱
1.3 C语言中解析符号时使用贪心策略,如x+++++y将被解析为x++
 ++ +y,并编译出错。1.5 单引号引起的一个字符代表一个对应的整数,对于采用ASCII字符集的编译...
                            
                            
                                分类:
其他好文   时间:
2014-06-30 20:19:44   
                                阅读次数:
202
                             
                    
                        
                            
                            
                                #include
#include
#include
#include
#include
#include
#include
using namespace std;
int line=1,row=1;
char c;
mapma;
struct  kind
{
    string na;    //单词
    int num;     //内码
    string type;  //类型
...
                            
                            
                                分类:
编程语言   时间:
2014-06-29 20:37:12   
                                阅读次数:
195
                             
                    
                        
                            
                            
                                js词法环境包括环境变量绑定及外部引用'函数创建的时候有个内部属性[[scope]],它指向当前函数的词法环境对象。而词法环境的外部引用一个词法环境'直到全局词法环境'它外部引用为null'这样就构成作用域链。当进入可执行代码时'会创建执行环境'执行环境包括词法环境变量环境及this关键字绑定'如果...
                            
                            
                                分类:
Web程序   时间:
2014-06-28 15:18:07   
                                阅读次数:
223
                             
                    
                        
                            
                            
                                中文分词是做好中文内容检索、文本分析的基础,主要应用于搜索引擎与数据挖掘领域。中文是以词为基本语素单位,而词与词之间并不像英语一样有空格来分隔,因而中文分词的难点在于如何准确而又快速地进行分词以下介绍4款开源中文分词系统。1、ICTCLAS – 全球最受欢迎的汉语分词系统 中文词法分析是中文信息处理...
                            
                            
                                分类:
其他好文   时间:
2014-06-26 22:35:29   
                                阅读次数:
298
                             
                    
                        
                            
                            
                                (1)建立关键字表,在识别表示符时可区分是关键字或标识符‘
(2)建立分隔符表;
(3)动态建立标识符表;
(4)动态建立常量表;
(5)读入C文本文件,得到二元式表...
                            
                            
                                分类:
其他好文   时间:
2014-06-22 14:20:14   
                                阅读次数:
183
                             
                    
                        
                            
                            
                                使用解析器
 
使用解析器是非常简单,可以使用它自己的词法分析器,但是,用fsyacc.exe 产生的解析器总是要求词法分析器。在这一小节,我们将讨论如何使用自己的词法分析器,以及与解析器联合。
 
警告
记住F# 编译器不能直接使用.fsl 和 .fsy 文件,需要用fslex.exe 和 fsyacc.exe 进行编译,创建.fs 文件,然后才能使用。通常,使用预编译事件实现,它在 ...
                            
                            
                                分类:
其他好文   时间:
2014-06-16 21:59:41   
                                阅读次数:
247
                             
                    
                        
                            
                            
                                在上一篇文章中已经介绍了读文件的操作,那么这一篇文章中将会仔细解释词法分析。
在源文件中解析出的单词流必须识别为保留字,标识符,常量,操作符和界符五大类
1.显然我们需要列举出所有的保留字,而这里与保留字相似的那么就是标识符,在C语言中,保留字都是以小写字母开头,而且其中的字母只能是小写字母,而标识符的第一个字母则必须为字符(小写大写皆可)后面可以接大小写字母和字符 ‘_’, 在我写的这个编译...
                            
                            
                                分类:
其他好文   时间:
2014-06-15 15:14:37   
                                阅读次数:
325
                             
                    
                        
                            
                            
                                编译器的前端词法分析:将源文件解析成一个个的单词流,为语法分析做准备。
在词法分析阶段,我们要做的就是将词分出来,并且确定单词的类型,一般的程序设计语言的单词符号可以份为以下5种:
1.关键字,如int,long等
2.标识符,用来表示各种名字,如常量名,变量名等
3.常数,各种类型的常数,如12,1.2等
4.运算符:如+,-,*,/等
5.界符,如“,”“;”等
那么在实际的过程...
                            
                            
                                分类:
其他好文   时间:
2014-06-15 08:23:44   
                                阅读次数:
206