Chào mấy bác, cho em hỏi là hàm malloc thực sự cấp cho bao nhiêu bộ nhớ vậy? Em khai báo một con trỏ và cấp cho nó 1 ô nhớ 1 byte thôi nhưng mà em truy cập và chỉnh sửa được đến 10 ô nhớ trong đó lận. Chương trình của em đây:
int main()
{
char *ptr = (char *)malloc(1);
for (int i = 0; i < 10; i++)
{
ptr[i] = i + 1;
printf("%d\t", ptr[i]);
printf("%d\n", &ptr[i]);
}
_getch();
}
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?