單項選擇題從安全編程的角度看,下面代碼是否有問題?若有是第幾行:()line1:char*function1(){line2:char*buffer1=malloc(8000);line3:if(buffer1)gets(buffer1);line4:returnbuffer1;line5:}line6:intmain(){line7:char*ptr=function();line8:if(ptr)free(ptr);line9:exit(0);line10:}

A.第2行
B.第3行
C.第9行
D.沒有錯誤


您可能感興趣的試卷

你可能感興趣的試題

3.單項選擇題代碼如下:test2(){chardes[5],src[5];inti;for(i=0;i<5;++i){src[i]=’A’;}strcpy(des,src);};則如下說法中正確的是:()

A.程序無法成功編譯
B.程序可以成功編譯,但執(zhí)行結(jié)果無法預(yù)測。
C.程序可以成功編譯,但執(zhí)行結(jié)果可以預(yù)測。
D.以上說法都不對

4.多項選擇題關(guān)于C/C++語言的main()函數(shù),以下正確的說法是:()

A.只有不接受任何參數(shù),或者接受兩個參數(shù)的main()函數(shù)是可移植的
B.該函數(shù)執(zhí)行return語句和調(diào)用exit()函數(shù)的效果是一樣的
C.任何用戶編寫的代碼都在進入main()函數(shù)之后才執(zhí)行
D.沒有return語句或者exit()調(diào)用的main()函數(shù)相當于返回0

5.單項選擇題代碼如下:voidcombine(int,double);voidcombine(long,int);voidcombine(...);intmain(){combine(1,2);}以下正確的說法是:()

A.該函數(shù)調(diào)用將解析為調(diào)用第一個combine()
B.該函數(shù)調(diào)用將解析為調(diào)用第二個combine()
C.該函數(shù)調(diào)用將解析為調(diào)用第三個combine()
D.該函數(shù)調(diào)用是“模棱兩可”的,無法通過編譯