flex、bison代码在visual studio 编译
在cygwin下自己写了个汇编器,使用flex和bison分别做词法和和语法分析。在cygwin下可以运行,但是汇编器要作为整个功能的一部分,就不得不把它封装起来,给外部提供接口。下边大概讲一下移植的过程及遇到的问题。
在vc下新建win32控制台应用程序,如果你的bison源代码中包含main函数建一个空工程就行了;
要在Windows下对flex和bison源码(assembler.l和assembler.y)进行重新编译,生成文件assembler_tab.h,assembler_tab.c,lex.yy.c。这里文件名与cygwin下有所区别,cygwin下生成的文件名是assembler.tab.c、assembler.tab.h、lex.yy.c,assembler是我自己起的名字;
把assembler_tab.h,assembler_tab.c,lex.yy.c三个文件添加到工程,编译。出现错误信息,提示“eh.h”文件只适用于c++,考虑vc对后缀为.c的文件默认使用c编译器,代码使用了c++的内容就会报错。找了半天如何强制设置编译器类型的方法都没找到,索性用最简单的方法,把.c后缀改为.cpp。
再编译,出错,提示Cannot open include file: 'unistd.h'文件,查了一下该文件是linux下的,相当于Windows下的stdlib.h,那么Windows下应该没用,所以直接注释掉,编译通过。
然后在命令行下运行,一切ok
相关文档:
http://blog.minidx.com/2008/08/06/1227.html good
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="horizontal" verticalAlign="top"
horizontalAlign="center" backgroundGradientColors="[0x000000,0x323232]" ......
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" applicationComplete="InitApp()">
<mx:Script>
<![CDATA[
......
Flex中的嵌入资源(Embedding Assets)——Swingguy摘译自Flex 3 Developer's Guide,转载请注明2007-10-27 17:18 Flex软件中经常需要使用一些外部的资源,如图片、声音、SWF或字体,虽然你也可以在软件运行的时候引入和载入,但是也可能经常需要直接将这些资源 ......
uint int Number
Flex 四舍五入:
整数的四舍五入法,Math.round(一个Number类型的数)
小数的有 tofixed(uint) 方法
例如 var num:Number = 56.159;
num.tofixed(2); 它是个S ......
学Flex也有一段时间了,参考了许多人的资料。一直想着自己写点东西分享给大家。如是,自己准备写这样的一个RPG游戏DEMO的系列。或许自己的算法,结构上设计有些许问题,但仍希望能给大家带来帮助,不好的地方请PASS掉。。。~~游戏也参考了深蓝色右手的许多设计思想,在此向其表示感谢。他的博客地址:http://w ......