操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    在閱讀一些開源系統的源代碼時,經常見到大量函數指針的使用,為了學習和理解函數指針,假想了一種情況,并使用函數指針達到目的。

    假想兩個結構體StructA和StructB都含有相同類型的字段t,而其他字段可能不同,為了使用統一的形式(或者說同一個函數)獲取兩種不同類型數據的t值,可以使用函數指針。

    在Win10中使用VS2022編程實驗。

    在VS2022中新建C++空項目,添加源文件“main.cpp”,輸入如下代碼:


    typedef struct StructA{

    __int64 t;

    char a;

    }StructA;

    typedef struct StructB{

    int b;

    __int64 t;

    }StructB;


    #define DATA_SIZE (5)

    StructA sa[DATA_SIZE];

    StructB sb[DATA_SIZE];


    enum DataType {

    DataType_StructA,

    DataType_StructB

    };


    // 獲取t值的函數.

    __int64 getT(void* pData, DataType dataType) {

    if (DataType::DataType_StructA==dataType) {

    return ((StructA*)pData)->t;

    }

    else if(DataType::DataType_StructB==dataType) {

    return ((StructB*)pData)->t;

    }

    return 0;

    }


    // 定義函數指針類型.

    typedef __int64 (*PFN_getT)(void* pData, DataType dataType);


    #include <iostream>

    int main()

    {

    for (int i=0; i < DATA_SIZE; i++) {

    sa[i].t=i + 1;

    sb[i].t=i * 10 + 1;

    }

    // 輸出sa和sb的t值.

    std::cout << "sa的t值" << std::endl;

    for (int i=0; i < DATA_SIZE; i++) {

    std::cout << "sa[" << i << "].t=" << sa[i].t << std::endl;

    }

    std::cout << "sb的t值" << std::endl;

    for (int i=0; i < DATA_SIZE; i++) {

    std::cout << "sb[" << i << "].t=" << sb[i].t << std::endl;

    }

    // 使用函數指針.

    PFN_getT pfn_getT=&getT;

    std::cout << "使用函數指針." << std::endl;

    std::cout << "sa的t值" << std::endl;

    DataType dt=DataType::DataType_StructA;

    void* pData;

    for (int i=0; i < DATA_SIZE; i++) {

    pData=&sa[i];

    std::cout << "sa[" << i << "].t=" << (*pfn_getT)(pData, dt) << std::endl;

    }

    std::cout << "sb的t值" << std::endl;

    dt=DataType::DataType_StructB;

    for (int i=0; i < DATA_SIZE; i++) {

    pData=&sb[i];

    std::cout << "sb[" << i << "].t=" << (*pfn_getT)(pData, dt) << std::endl;

    }

    return 1;

    }


    上述代碼定義兩個結構體StructA和StructB,定義了從這兩個結構體獲得t值的函數getT,并為該函數定義了函數指針類型PFN_getT。接著定義了兩種數據的數組sa和sb。

    在main函數中,首先為sa和sb的t值賦值,接著輸出sa和sb的t值,最后,使用PFN_getT的實例pfn_getT輸出sa和sb的值。可以比較兩種輸出的結果是否一致,來確定使用函數指針的結果是否正確。重要的是sa和sb的值可以借助變量pData和dt使用統一的形式“(*pfn_getT)(pData, dt)”輸出,我想這也許是函數指針得到廣泛應用的原因之一。

    上述程序運行結果如下:


    從運行結果可以看出,使用函數指針的結果與直接輸出的結果一致。但實現了形式的統一。

    一共有三種方式可以把生字拼音上的聲調打在拼音上面,詳解如下:

    1、Windows 自帶的輸入法中,選擇 “智能ABC” 輸入法,按 V8 就能出現拼音里帶聲調的韻母。

    2、自己安裝的輸入法,比如 “搜狗” 輸入法,按 Ctrl-Shift-Z 即可調出 “特殊符號” 輸入面板,選擇 “拼音/注音” 就行了。

    3、使用其他軟件,比如 Word 2003 中,把需要拼音的漢子輸入后,選擇這些漢字,然后在菜單選擇 “格式”、“中文版式”、“拼音指南”、“確定”,就能看到漢字上方已經增加了對應的拼音,復制粘貼這些已經加了拼音的文字到記事本,可以看到類似 “拼(pīn)音(yīn)” 這樣的文字。相關圖片如下:

    漢字拼音音調輸入小技巧

    http://www.sina.com.cn

    對于語文老師來說,編輯試卷、教案經常要給漢字加注漢語拼音。在大部分編輯軟件中,輸入漢語拼音往往是通過手工輸入英文字母,再通過“插入字符”或利用某些輸入法提供的軟鍵盤功能輸入音調的。如果要實現文字和拼音相對應,還要精心調整上下兩行字的字距和字體大小。一旦某一個字發(fā)生了變化,可能又要重新調整,操作起來十分困難。

    其實,如果您安裝了Office XP,用它的組件Word 2002,您會發(fā)現拼音的輸入變得非

    常簡單。我們以“中國電腦教育報”注音為例來說明:

    1、輸入“中國電腦教育報”。

    2、通過有關字體字號命令,將內容按輸出需要排版。

    3、選中上面輸入的“中國電腦教育報”(Word 2002注音每次可以選中50個漢字)文字信息。

    4、單擊菜單“格式→中文版式→拼音指南”,打開圖1所示對話框,可以看到軟件已經將拼音填寫好,不用再通過軟鍵盤等方式輸入了。我們可以通過窗口中部的“對齊方式”進行拼音和文字對齊方式的設定,通過“偏移量”設置文字與拼音的行間距,通過“字號”設置拼音字母的大小,以及通過字體設定拼音字母所調用的字體。

    圖1

    5、單擊[確定]退出,會看到圖2所示的效果。

    圖2

    另外圖1窗口中還有一個[組合]按鈕和一個[單字]按鈕,系統默認是選中[單字]按鈕,即對每一個漢字單獨注音。兩者產生的結果是有差異的,例如將“中國電腦教育報”注音后,另存為文本文件,“單字”方式在文本文件顯示為“中(zhōng)國(guó)電(diàn)腦(nǎo)教(jiào)育(yù)報(bào)”,“組合”方式在文本文件中顯示為“中國電腦教育報(zhōngguódiànnǎojiàoyùbào)”。我想,“組合”方式對于小學語文老師編排“根據拼音寫文字”的試題非常有用,方法就是先錄入文字,然后用“拼音指南”添加拼音,再存為文本文件,最后將其中的文字刪除即可快速編制一道根據拼音寫文字的試題了。

    以word2007為例:

    1.選中需要注音的生字詞語,單擊“開始”菜單,單擊“拼音指南”命令,如下圖:

    2.在彈出的“拼音指南”對話框中單擊“默認讀音”按鈕,給出拼音指南。如下圖:

    3.在“拼音文字”框中刪除不需要注音的拼音文字。在“對齊方式”列表中選擇拼音與文字的對齊方式。在“偏移量”框選擇或輸入拼音底端與文字頂端的間距(0~100之間)。在“字體”列表中選擇字體。在“字號”列表中選擇或輸入字體大小。如下圖:

    4.單擊“確定”按鈕,在生字上面注音后的效果如下圖:

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區(qū)    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有