Có chuyện gì xảy ra khi cấp phát thiếu bộ nhớ cho mảng?

e có hơi thắc mắc cái này ,khi e viết

int p[2];
 for(int i=0;i<=10;i++)
 {  
    p[i]=i;
}

nó vẫn chạy bình thường ,chỉ là báo thêm vùng nhớ quá bé ??
nếu như khai báo vậy thì nó có rủi ro gì ạ

Nếu biên dịch trên linux bạn sẽ gặp lỗi core dumped, tức là lỗi truy cập vào vùng nhớ chưa được cấp phát.

1 Like

nó sẽ ghi đè lên vùng nhớ từ 3->10 gây mất dữ liệu của vùng nhớ này. thường IDE nó sẽ báo thôi, tự mình quản lý được thì quá pro :slight_smile:

Thanks mấy anh :blush:

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?