提前認識軟體開發(8) memset()與memcpy()函數

來源:互聯網
上載者:User

軟體項目中的代碼,少則數千行,多則上萬行,但並非無規律可循。閱讀了那麼多代碼之後,我發現有兩個函數出現的頻率很高,那就是memset()與memcpy()函數,它們都是C語言編程中經常要用到的。工作之餘,我查了一些資料,現對它們作一個簡單的說明。

1. memset()函數

(1)函數原型

void *memset( void *dest, int c, size_t count )。

(2)函數作用

在MSDN中,將該函數的作用描述為:Sets buffers to a specified character,即:將緩衝設定為一個專門的字元。簡單地說,就是將已開闢記憶體空間dest的首count個位元組的值設為值c。

(3)應用舉例

/***************************************************************    *著作權 (C)2014, Zhou Zhaoxiong。    *    *檔案名稱:memset.c    *內容摘要:用於測試memset函數    *其它說明:無    *目前的版本:V1.0    *作   者:周兆熊    *完成日期:20140329    *    *修改記錄1:   //修改記錄,包括修改日期、版本號碼、修改人及修改內容等    *   修改日期:    *   版本號碼:    *   修改人:    *   修改內容:    ***************************************************************/             #include <memory.h>    #include <stdio.h>             typedef signed char INT8;                       //重定義資料類型    typedef signed int  INT32;                     //重定義資料類型             /**********************************************************************     *功能描述:主函數     *輸入參數:無     *輸出參數:無     *傳回值:無     *其它說明:無     *修改日期           版本號碼          修改人        修改內容     * ------------------------------------------------------------------------------------------------------     * 20140329            V1.0            周兆熊          建立     ***********************************************************************/    INT32 main(void)    {        INT8 szTestStr[100] = "AAAAAAAAAA";                      printf("The original string is: %s\n", szTestStr);                      memset(szTestStr, 'B', 5);     //調用memset函數                      printf("The changed string is: %s\n", szTestStr);                 return 0;    }

該程式的輸出結果為:

更多精彩內容:http://www.bianceng.cnhttp://www.bianceng.cn/Programming/project/

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.