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

            旅途

            如果想飛得高,就該把地平線忘掉

            [轉載]C語言防止緩沖區溢出方法

            C語言使用直接的內存訪問,緩沖區溢出是經常出現的安全問題。
            下面將介紹常見的緩沖區溢出,及防止方法。

            1、判斷邊界
            例程序:
            void outstr(int a[10])
            {
                    for(i=0;a[i]!=0&&i<10;i++)
                    {
                            printf("%d\n",a[i]);
                    }
            }
            當i=10時,判斷i<10同時需要判斷a[i]!=0,
            此時a[10]已經訪問到非法區域,可能引起緩沖區溢出問題。

            防止方法:將判斷條件分成幾條語句
            例:
            if(i<10){
                    if(a[i]!=0){
                            ...
                    }
            }

            2、字符串操作
            C語言的字符串庫沒有安全保護,在使用時要特別小心。
            strcpy、strcat等函數操作時沒有檢查緩沖區大小,容易引起安全問題。
            防止方法:
            1)使用strncpy、strncat,限制拷貝字符串長度。
            2)或者是在strcpy、strcat之前檢查緩沖區大小是否滿足要求。

            3、free
            free后指針不是NULL。所以判斷指針是否為NULL并不能保證指針有效。
            防止方法:在free后重置指針。
            free(p);p=NULL;

            4、指針未初始化
            指針未初始化便引用。指針初始值未知,無法根據值判定指針是否有效。
            指針聲明后盡快初始化,如不能初始化為有效值,也要初始化為NULL。
            防止方法:每次使用指針,不能確定指針有效時,先判斷指針是否為NULL。
             


            posted on 2007-07-22 02:16 旅途 閱讀(626) 評論(0)  編輯 收藏 引用 所屬分類: C/C++

            AAA级久久久精品无码区| 狠狠色狠狠色综合久久| 国内精品久久久久影院日本| 久久久久亚洲AV成人网人人网站 | 国产成人AV综合久久| 国产精品狼人久久久久影院| 亚洲国产精品综合久久网络| 亚洲国产精品无码久久一线| 国产成人香蕉久久久久| 久久精品国产男包| 一本色道久久88加勒比—综合| 2021最新久久久视精品爱| 久久久久久a亚洲欧洲aⅴ| 日韩欧美亚洲综合久久| Xx性欧美肥妇精品久久久久久 | 国产精品久久久久久久久鸭| 久久精品无码一区二区app| 亚洲日本va中文字幕久久| 久久久WWW成人| 久久国产精品成人片免费| 尹人香蕉久久99天天拍| 91久久九九无码成人网站| 国内精品久久久久影院优| 国产69精品久久久久久人妻精品| 久久精品免费一区二区三区| 亚洲va久久久噜噜噜久久男同| 久久精品亚洲乱码伦伦中文| 久久久久久免费一区二区三区 | 久久亚洲精品无码播放| 99久久精品无码一区二区毛片| 婷婷综合久久中文字幕蜜桃三电影 | 久久婷婷五月综合成人D啪 | 久久er国产精品免费观看2| 久久久无码一区二区三区| 思思久久99热只有频精品66| 亚洲国产精品成人久久蜜臀| 国产精品成人久久久久三级午夜电影| 波多野结衣中文字幕久久| 国产精品久久影院| 久久国产精品久久国产精品| 99精品久久久久中文字幕|