Tôi có đoạn code sau, chạy trên Suse 10.1/G ++ 4.1.0, và nó không ghi được vào file:ofstream không tuôn
#include <fstream>
#include <iostream>
int main(){
std::ofstream file("file.out");
file << "Hello world";
}
Các tập tin được tạo ra một cách chính xác và mở ra, nhưng trống. Nếu tôi thay đổi mã để:
#include <fstream>
#include <iostream>
int main(){
std::ofstream file("file.out");
file << "Hello world\n";
}
(thêm một \n
đến văn bản), nó hoạt động. Tôi cũng đã cố gắng xả bỏ dòng chảy, nhưng nó không hoạt động.
Mọi đề xuất?
Làm cách nào để kiểm tra tệp kết quả? – log0
Chương trình trên Debian/Sid với g ++ 4.4.4 hoạt động như mong đợi và tệp.out chứa chuỗi (không có dòng mới). Thử cập nhật trình biên dịch hoặc hệ điều hành của bạn - cả hai đều lỗi thời. – Dummy00001
Bạn kiểm tra xem tệp có trống không?Làm điều này trên tập tin kết quả: wc và xem đầu ra là gì. Nó phải là 0 2 11. 0 dòng, 2 từ, 11 ký tự. Nếu không có dòng mới, đầu ra "Hello world" sẽ chạy vào dấu nhắc của bạn, vì vậy bạn có thể chỉ thiếu nó. –