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

            通關(guān)旅

            softgamer的痕跡
            posts - 16, comments - 13, trackbacks - 0, articles - 0

            C++體會 -- 類型

            Posted on 2007-02-05 21:00 softgamer 閱讀(213) 評論(0)  編輯 收藏 引用 所屬分類: 學習日志
            我在使用C++時有一些體會,相信大家都會的。我寫出來也是和大家分享一下
            1。在C++中數(shù)據(jù)類型float和double.
            ???? 同類型為float的變量相比,類型為double的變量可保存的值較大且較為準確,因此我比較喜歡使用double而不是float.這里有一個重要的點要說一下:比如我們定義兩個變量
            ???? int sum = 1230;
            ???? int score = 230;
            ???? double avrg? = 0.0f;
            ???? 如果我們用:
            ???? avrg = sum/score;
            ???? 其中(sum/score)這個計算結(jié)果是一個整型, 因為sum和score都是整型。在這樣的計算中。小數(shù)部分會
            ??? 丟失,因此C++提供了一元強制類型轉(zhuǎn)換
            ???? avrg = static_cast< double > ( sum ) / score;

            ??? static_cast < double > (), 這位sum創(chuàng)建了一個臨時性的浮點數(shù)副本,這就是我們說的顯式轉(zhuǎn)換。對比顯式轉(zhuǎn)換,當然就是隱式轉(zhuǎn)換,例如當score 被提升為double后,開始執(zhí)行浮點除法運算。
            ??? 然后我們輸出
            ??? cout << "aver is " << setprecision(2)
            ??????????? <<setiosflags( ios::fixedm ios::showpoint )
            ??????????? << avrg <<endl;
            ?? setprecision(2) 是被稱作參數(shù)化操作元的東西,要加一條預編譯指令
            ?? #include <iomanip>
            ?? endl是一個非參數(shù)化操縱元,它不需要<iomanip>頭文件,如果未指定精度,浮點值會采用6個精度(默認)輸出。
            ?? 注意不要愚蠢的想比較兩個浮點數(shù)是否相等,應該測試兩個浮點數(shù)的差值的絕對值是否小于一個指定的小值。這一點在游戲的坐標跟蹤中常被用到。

            # include <iostream>

            using std::cout;
            using std::cin;
            using std::endl;
            using std::ios;

            # include <iomanip>

            using std::setprecision;
            using std::setiosflags;

            int main()
            {
            ??? int score = 0;
            ??? int sum = 0;
            ??? int count = 0;

            ??? double avrg;

            ??? cout<<"enter score - to end: ";
            ??? cin>>score;
            ??? while ( score != -1 )
            ??? {
            ??????? sum = sum + score;
            ??????? count = count + 1;
            ??????? cout<< "enter score , -1 to end : ";
            ??????? cin>>score;
            ??? }

            ??? if( count != 0 )
            ??? {
            ??????? avrg = static_cast< double > (sum ) / count;
            ??????? cout << "avrg is " << setprecision(2)
            ??????????? << setiosflags(ios::fixed | ios::showpoint )
            ??????????? << avrg << endl;
            ??? }
            ??? else
            ??? {??? cout << " NO!!!!!";

            ??? }
            ??? return 0;
            }

            enter score - to end: 75
            enter score , -1 to end : 93
            enter score , -1 to end : 23
            enter score , -1 to end : 98
            enter score , -1 to end : 43
            enter score , -1 to end : 54
            enter score , -1 to end : 56
            enter score , -1 to end : 2334
            enter score , -1 to end : 45
            enter score , -1 to end : 43
            enter score , -1 to end : 454
            enter score , -1 to end : 232
            enter score , -1 to end : -1
            avrg is 295.83
            亚洲午夜久久久久妓女影院| 亚洲嫩草影院久久精品| 亚洲国产精品成人久久| 国产美女久久久| 久久强奷乱码老熟女| 国产成人精品三上悠亚久久| 久久亚洲精精品中文字幕| 国内精品久久久久久久亚洲| 精品国产乱码久久久久久人妻| 99久久国产综合精品麻豆| 久久亚洲熟女cc98cm| 久久久久亚洲AV成人网人人软件 | 国产人久久人人人人爽| 国内精品久久久久久不卡影院| 久久青青国产| 久久国产免费观看精品| 亚洲人成无码久久电影网站| 1000部精品久久久久久久久| 久久无码一区二区三区少妇| 久久久久免费看成人影片| 久久久久久久久久久| 国产精品一区二区久久精品无码 | 久久久精品久久久久影院| 一级做a爱片久久毛片| 亚洲国产精品久久久天堂| 亚洲国产天堂久久久久久| 青青青青久久精品国产h| 国产ww久久久久久久久久| 亚洲日本va中文字幕久久| 亚洲国产成人精品无码久久久久久综合| 久久伊人精品青青草原高清| 综合久久国产九一剧情麻豆 | 久久久久99精品成人片牛牛影视| 老色鬼久久亚洲AV综合| 精品伊人久久大线蕉色首页| 久久亚洲精品无码aⅴ大香| 亚洲国产成人精品91久久久 | 欧洲性大片xxxxx久久久| 国产农村妇女毛片精品久久| 999久久久免费国产精品播放| 伊人热人久久中文字幕|