筆試題Test函數

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

    筆試題(Test函數)

    void GetMemory(char *p)

    筆試題(Test函數)

    {

    p = (char *)malloc(100);

    }

    void Test(void)

    {

    char *str = NULL;

    GetMemory(str);

    strcpy(str, "hello world");

    printf(str);

    }

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

    答:試題傳入GetMemory( char *p )函數的形參為字符串指針,在函數內部修改形參并不能真正的改變傳入形參的值,執行完 char *str = NULL; GetMemory( str ); 后的str仍然為NULL;

    char *GetMemory(void)

    {

    char p[] = "hello world";

    return p;

    }

    void Test(void)

    {

    char *str = NULL;

    str = GetMemory();

    printf(str);

    }

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

    答:可能是亂碼。 char p[] = "hello world";

          return p; 
    的p[]數組為函數內的'局部自動變量,在函數返回后,內存已經被釋放。這是許多程序員常犯的錯誤,其根源在于不理解變量的生存期。
     

    【筆試題(Test函數)】相關文章:

    華為2017筆試題08-16

    360筆試題目10-20

    華為2017筆試試題08-10

    日語J.TEST考試E-F練習試題11-06

    2017年J.TEST考試練習試題「部分」11-06

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

    2017年J.TEST考試E-F級練習試題11-06

    日語J.TEST考試E-F級讀解練習試題11-06

    2017年日語J.TEST考試文法詞匯練習試題11-06

    J.TEST考試方法10-01

    91久久大香伊蕉在人线_国产综合色产在线观看_欧美亚洲人成网站在线观看_亚洲第一无码精品立川理惠

      香港三香港日本三级在线理论 | 亚洲色婷婷丁香五月 | 久久综合香蕉久久久久久久 | 一本久久a精品一区二区 | 日本国产欧美在线观看 | 亚洲福利精品一区二区三区 |