C++ Lỗi ghi ký tự rác ra file txt

Chương trình của em có định kiểu dữ liệu như sau :
image
Sau quá trình nhập dữ liệu cho biến thì nó đã ghi nhận được
image
nhưng khi ghi thông tin ra file
image
thì kết quả nhận được ở những biến là mảng là ký tự rác, còn những biến thường thì không sao


Em thử tìm sửa lỗi như thay đổi kiểu string sang char* hay kiểu dữ liệu để viết lên file % nhưng có vẻ không phải nên vẫn chưa giải quyết được vấn đề. Nhờ mọi người hỗ trợ. Em cảm ơn

char cusName[30]; nha :V cusName là mảng 30 ký tự, lưu được chuỗi có tối đa 29 ký tự.

4 Likes

à e quên đổi hình, hình đó file cũ, e đã update lại hình như trên nhưng vẫn bị lỗi ạ

printf("%s", s là của C, kiểu của s phải là char*, s kia truyền vào là kiểu std::string của C++ thì làm sao in ra đúng :V Compile được cũng lạ thật đấy :V :V

thêm .data() hoặc .c_str() cho s để lấy ra chuỗi C (C string) là được. Hoặc xài std::ofstream thay vì xài FILE* của C đi :V

P = bpop(); là cái gì đây??? P ở đây là giá trị rác à?
void ghiFile(sNode* head, ...) thì head ở đây để làm cái gì đây???

4 Likes

em fix được rồi. Tks ạ !

mấy cái phần bpop và sNode nó là phần lấy dữ liệu từ Stack của e

Vararg thì sao compiler check được.

4 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?