• <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>

            麒麟子

            ~~

            導航

            <2009年2月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            1234567

            統計

            常用鏈接

            留言簿(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)  編輯 收藏 引用

            亚洲第一永久AV网站久久精品男人的天堂AV | 久久久久国产一区二区| 久久综合综合久久狠狠狠97色88| 亚洲AV日韩精品久久久久久| 久久国产精品久久| 一本久久综合亚洲鲁鲁五月天| 久久99热这里只有精品国产| 久久精品无码专区免费青青 | 久久精品国产亚洲av影院| 波多野结衣中文字幕久久| 久久久久人妻精品一区三寸蜜桃 | 国产精品综合久久第一页| 人妻无码久久精品| 久久国产精品99精品国产987| 欧美久久一级内射wwwwww.| 久久综合狠狠综合久久综合88| 久久久中文字幕| 久久99热只有频精品8| 亚洲国产成人精品无码久久久久久综合| 亚洲综合日韩久久成人AV| 26uuu久久五月天| 狠狠色丁香久久综合婷婷| 久久久久久曰本AV免费免费| 久久婷婷人人澡人人| 久久99精品国产麻豆宅宅| 狠狠色丁香久久婷婷综合| 久久精品18| 久久毛片免费看一区二区三区| 成人妇女免费播放久久久| 久久久国产精品亚洲一区| 亚洲AV日韩AV天堂久久| 久久精品国产乱子伦| 99久久国产宗和精品1上映| 欧洲国产伦久久久久久久| 99久久婷婷国产一区二区 | 一本色道久久综合狠狠躁篇| 麻豆精品久久久一区二区| 久久亚洲国产午夜精品理论片| 国产V亚洲V天堂无码久久久| 久久亚洲精品成人av无码网站| 欧洲人妻丰满av无码久久不卡 |