Tôi gặp phải loại sự cố "Schroedinger's Cat" ở đây - chương trình của tôi (thực sự là bộ thử nghiệm cho chương trình của tôi, nhưng dù sao cũng là một chương trình) đang gặp sự cố, nhưng chỉ khi được xây dựng ở chế độ phát hành và chỉ khi khởi chạy từ dòng lệnh . Thông qua gỡ lỗi thượng cổ (ví dụ: các thông báo printf () khó chịu ở khắp nơi), tôi đã xác định được phương pháp kiểm tra nơi mã bị lỗi, mặc dù rất tiếc sự cố thực sự dường như xảy ra trong một số trình hủy, vì các thông báo theo dõi cuối cùng mà tôi thấy là trong các trình hủy khác thực thi rõ ràng.
Khi tôi cố gắng chạy chương trình này bên trong Visual Studio, nó không bị lỗi. Tương tự khi khởi chạy từ WinDbg.exe. Sự cố chỉ xảy ra khi khởi chạy từ dòng lệnh. Điều này đang xảy ra trong Windows Vista, btw và rất tiếc là tôi không có quyền truy cập vào máy XP ngay bây giờ để kiểm tra.
Sẽ thực sự tuyệt vời nếu tôi có thể yêu cầu Windows in ra một dấu vết ngăn xếp, hoặc một cái gì đó khác ngoài việc đơn giản là chấm dứt chương trình như thể nó đã thoát sạch. Có ai có bất kỳ lời khuyên nào về cách tôi có thể nhận được một số thông tin có ý nghĩa hơn ở đây và hy vọng sửa lỗi này không?
Chỉnh sửa: Vấn đề thực sự là do một mảng nằm ngoài giới hạn gây ra, mà tôi mô tả nhiều hơn trong bài đăng này . Cảm ơn mọi người đã giúp đỡ của bạn trong việc tìm kiếm vấn đề này!