開發平台(Platform): (Ex: Win10, Linux, ...)
windows
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
GCC
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
NO
問題(Question):
此段程式有甚麼risks 跟 如何改進他
程式碼(Code):(請善用置底文網頁, 記得排版,禁止使用圖檔)
void clean_buffer(int A[], unsigned int number){
unsigned int i;
if(number > 0){
for(i = 0; i <= number - 1; i++){
A[i] = 0;
}
}
}
這題是去年在NV面試時遇到的考題
考官有提到number 跟 array A[] 的size是一樣的
但答案是跟 overflow 或是 踩到未定義記憶體位址有關係
實在是忘記當初的答案 最近想到這題實在是太想知道答案
無奈chatgpt沒辦法給出正確的回答 上來請教各位大大 再麻煩幫忙解惑了