01/10/2018, 00:57
Hỏi về mảng trong C
mình viết một đoạn code về mảng như thế này
int main()
{
char mangkytu[]=“12345”;
mangkytu[5]= ‘6’;
printf("%s
",mangkytu);
}
thì kết quả chạy là 123456< <
bạn, anh chị nào chỉ dùm mình lý do tại sao nó tự add thêm mấy phần tử phía sau như vậy , và cách khắc phục với ạ.
Bài liên quan
Do chuỗi của bạn chưa có ký tự kết thúc chuỗi
\0
thêm dòng
mangkytu[6] = '\0'
là sẽ hết !hehe cám ơn bạn nhé !
Hi Pham Anhminhanh.1148.
Code của bạn hình như hơi có vấn đề trong truy cập vùng nhớ thì phải ?
khai báo 5 phần tử tức là 0-4… mà truy cập phần tử thứ 5 … truy cập vô nulll
Lạy :)))
Đoạn mangkitu[5]=6 là viết đè vô null rồi, lm mất kí tự kết thúc xâu.