Mình mới lập trình trên linux thì bị lỗi Segmentation Fault (core dumped). Mình tìm trên Google rồi mà không có.
Lỗi Segmentation Fault (core dumped) là lỗi gì?
Thường là chạy nhầm trên vùng nhớ nào đó, hoặc tràn bộ đệm. Bạn dùng ngôn ngữ gì vậy
Mình dùng ngôn ngữ c, mà mình tìm ra giải pháp rồi, cảm ơn bạn đã quan tâm nha
chào @Never is too late! , giải pháp của bạn là gì vậy
Thường là do pointer đang trỏ sai, mở debug (GDB/Visual studio) xem những chỗ khả nghi .
khi mình chạy code thì có thi thoảng nó mới bị lỗi như vậy, có những nguyên nhân nào gây ra lỗi này vậy @Dark.Hades , mình chưa hiểu rõ về bug này lắm.
Code bạn có dài không?
Nếu ngắn thì đưa lên đây thử, còn dài thì tốt nhất là bật debug, tìm đoạn bạn sử dụng con trỏ cảm thấy nghi ngờ rồi xóa đi thử
code dài thiên thu thank bạn nhiều nha.
lỗi segmentation fault là do các dài hả mấy a chị
tình trạng khắc phục thì mình làm sao ạ
Ý nói là code dài thì không ai tìm hộ ấy mà.
Segfault là lỗi truy cập bộ nhớ do một là đọc ghi ngoài mảng (tính sai chỉ số mảng hay sai cận), hai là lỗi liên quan đến con trỏ (viết sai, dùng con trỏ chưa khởi tạo, double-free
, đọc ghi những chỗ đã free()
rồi), ba là ghi lên const (như literal string), bốn là lỗi sử dụng tham biến (như scanf) như bị dư tham số (vẫn là scanf/printf).
mình dùng free pascal, mình cũng bị lỗi này, nhg mà ko biết sửa như nào, bạn nào biết thì giúp mình với
Bạn up code lên nhé.
Chỗ này của bạn là dòng nào?
Up code lên chứ đừng up screenshot.
Bạn xem giúp mình với mình đang nhập vào dữ liệu mình nhập số phần tử là 3 nhưng sau khi nhập xong 2 phân tử thì không nhập được nữa , mình debug sau khi nhập xong 2 phần tử thì nó báo lỗi như mn ở trên
cảm ơn bạn
Con trỏ p
đang bằng NULL
.
anh ơi anh có thể cho em giải pháp đó ko ạ