tôi nhận thức "thực hiện" Thông điệp của tôi với valgrind, và nhận được báo cáo cảnh này:Segfaulting chỉ mà không valgrind
==3434== HEAP SUMMARY:
==3434== in use at exit: 8,432 bytes in 4 blocks
==3434== total heap usage: 4,369 allocs, 8,037 frees, 377,356 bytes allocated
==3434==
==3434== LEAK SUMMARY:
==3434== definitely lost: 152 bytes in 1 blocks
==3434== indirectly lost: 0 bytes in 0 blocks
==3434== possibly lost: 0 bytes in 0 blocks
==3434== still reachable: 8,192 bytes in 2 blocks
==3434== suppressed: 88 bytes in 1 blocks
==3434== Rerun with --leak-check=full to see details of leaked memory
==3434==
==3434== For counts of detected and suppressed errors, rerun with: -v
==3434== ERROR SUMMARY: 100190 errors from 140 contexts (suppressed: 0 from 0)
Nhưng khi tôi chạy nó mà không valgrind, nó segfaults ngay lập tức. Liệu valgrind có ngăn chặn một loại lỗi nhất định mà tôi nên tìm kiếm không? Tôi không thể tìm thấy bất kỳ thông tin nào về việc này trực tuyến
Bất kỳ "đọc không hợp lệ" hoặc "ghi không hợp lệ" trong đầu ra valgrind? –
tấn. Những thứ đó phải xấu. – SetSlapShot
Đúng. Họ có nghĩa là bạn đang đọc hoặc viết bộ nhớ không phải của bạn. Phải sửa tất cả. –