<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>

            筆試題GetMemory

            時間:2020-10-15 14:27:34 筆試題目 我要投稿

            筆試題(GetMemory)

            void GetMemory2(char **p, int num)

            筆試題(GetMemory)

            {

            p = (char *)malloc(num);
            }

            void Test(void)

            {

            char *str = NULL;

            GetMemory(&str, 100);

            strcpy(str, "hello");

            printf(str);

            }

            請問運行Test函數會有什么樣的結果?

            答:

            (1)能夠輸出hello (2 )Test函數中也未對malloc的內存進行釋放。(3)GetMemory避免了試題1的問題,傳入GetMemory的.參數為字符串指針的指針,但是在GetMemory中執行申請內存及賦值語句

            p = (char *) malloc( num );
            后未判斷內存是否申請成功,應加上: if ( *p == NULL ) {

                ...//進行申請內存失敗處理
             }

             

            void Test(void)

            {

            char *str = (char *) malloc(100);

                 strcpy(str, “hello”);
                 free(str);     
                 if(str != NULL)
                 {
                   strcpy(str, “world”);
            printf(str);

            }

            }

            請問運行Test函數會有什么樣的結果?

            答:執行 char *str = (char *) malloc(100); 后未進行內存是否申請成功的判斷;另外,在free(str)后未置str為空,導致可能變成一個“野”指針,應加上: str = NULL;
             

            【筆試題(GetMemory)】相關文章:

            360筆試題目10-20

            華為2017筆試題08-16

            華為2017筆試試題08-10

            桂林銀行筆試題筆經10-21

            QMS2007筆試審核知識模擬試題11-02

            眼線筆類型-如何挑選眼線筆11-09

            馬克筆有哪些分類-馬克筆的分類11-03

            ps筆刷怎么安裝08-27

            唇線筆怎么用10-11

            美甲筆如何保養10-07

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看