• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            麒麟子

            ~~

            導航

            <2025年6月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            293012345

            統計

            常用鏈接

            留言簿(12)

            隨筆分類

            隨筆檔案

            Friends

            WebSites

            積分與排名

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            FlasCC例子研究之HelloWorld

            打開samples/01_HelloWorld,你會發現,只有一個hello.c和Makefile文件。

            打開hello.c,你會更加吃驚,因為只有

            #include <stdio.h>

            int main(int argc, char **argv)

            {

                printf(“Hello World”);

                //這是我加上的,原文沒有。

                return 0;

            }

             

            這完全就是一個普普通通的C語言HELLO WORLD程序。

            在程序中,夾雜著一段注釋

            // flascc comes with a normal BSD libc so everything you would expect to
            // be present should work out-of-the-box. This example just shows a
            // simple message formatted using printf.
            //
            // When compiled as a projector this message will be to stdout just like
            // a normal commandline application. When compiled to a SWF it will be
            // displayed in a textfield on the stage. This behavior is overrideable
            // as you will see in later samples.

             

            大概就是說FLASCC使用的是常規的BSD libc。如果是使用普通的C庫,那你的代碼編寫起來,沒有任何區別。

             

            使用FLASCC編譯時,可以編譯成三種東西, 一種是Projector程序,這種程序是在Cygwin下可以執行的EXE文件。

            一種是swf,這種就是直接可以用FP播放的了。 還有一種是SWC,可以提供給AS3調用。

            代碼本身沒有太多特別的。 我們來看看Makefile的內容。

             

            T01: check
                @echo "-------- Sample 1 --------"
                @echo && echo "First let's compile it as a projector:"
                "$(FLASCC)/usr/bin/gcc" $(BASE_CFLAGS) hello.c -o hello.exe

                @echo && echo "Now lets compile it as a SWF:"
                "$(FLASCC)/usr/bin/gcc" $(BASE_CFLAGS) hello.c -emit-swf -swf-size=200x200 -o hello.swf

            include ../Makefile.common

            clean:
                rm -f hello.swf hello *.bc *.exe

             

            這個Makefile中,第一次是將這個編譯為hello.exe,即剛剛說到的Projector程序。 第二次是編譯為hello.swf.

            可以看出,二者都使用了相同的CFLAGS標記。 我們打開Makefile.common可以看到,BASE_CFLAGS實際上是

            -Werror -Wno-write-strings -Wno-trigraphs

            我們暫時不關注這個。 我們來看看,如果想生成一個projector程序,則和GCC下編譯一個普通的EXE程序沒有區別。而如果是想編譯為SWF,則需要手動指定一些額外的參數。

            -emit-swf -swf-size=200x200

            -emit-swf表示告訴編譯器,目標文件是swf

            -swf-size=200x200則告訴編譯器,最終生成的目標SWF的舞臺大小。

            總的來說,這個比較簡單,雖然沒有什么可看的。還是貼一下效果圖。

            image

            posted on 2013-05-14 00:40 麒麟子 閱讀(452) 評論(0)  編輯 收藏 引用

            久久亚洲国产午夜精品理论片| 久久99精品久久久久久噜噜| 四虎亚洲国产成人久久精品| 日韩av无码久久精品免费| 久久精品99久久香蕉国产色戒 | 浪潮AV色综合久久天堂| 欧洲成人午夜精品无码区久久 | 久久国产成人午夜aⅴ影院| 人妻无码精品久久亚瑟影视| 欧美伊人久久大香线蕉综合| 久久精品国产精品亚洲毛片| 国产精品丝袜久久久久久不卡| 一本色综合网久久| 久久久久人妻一区精品| 久久精品草草草| 东京热TOKYO综合久久精品| 亚洲国产精品无码久久一线| 色综合久久88色综合天天 | 久久夜色精品国产欧美乱| 久久强奷乱码老熟女| 91精品国产高清久久久久久国产嫩草 | 亚洲va中文字幕无码久久不卡| 亚洲国产精久久久久久久| 国产aⅴ激情无码久久| 国产巨作麻豆欧美亚洲综合久久| 伊人久久大香线蕉综合影院首页| 久久精品无码免费不卡| 久久久久一区二区三区| 久久久久亚洲AV片无码下载蜜桃| 亚洲国产成人久久综合一区77| 国产精品无码久久四虎| 精品久久一区二区三区| 久久99国产乱子伦精品免费| 久久狠狠爱亚洲综合影院| 国内精品久久久久久久久电影网| 日本高清无卡码一区二区久久 | 色综合久久久久久久久五月| 久久无码AV中文出轨人妻| 中文精品99久久国产| 久久久久久av无码免费看大片| 亚洲嫩草影院久久精品|