5
tôi có mã đơn giản này:trở về một loại phao từ hàm trong c
int main()
{
float x = foo();
printf("returned value: %f", x);
return 0;
}
float foo()
{
return 5;
}
khi tôi chạy mã, đầu ra là: "trở lại giá trị: -858.993.472,000000"
có thể ai đó xin vui lòng explaing với tôi tại sao giá trị trả về là không 5.000000?
Cảm ơn! Tôi đã dành một giờ cho việc này ... – MOP
... hoặc xác định 'foo()' * trước * 'main()'. @MOP: Bạn nên điều chỉnh cài đặt mức cảnh báo cho trình biên dịch của mình; hầu hết các trình biên dịch sẽ cảnh báo về điều này không ngăn chặn hoặc bỏ qua cảnh báo. Tôi đề nghị bạn cũng đặt cảnh báo là lỗi (GCC: -Wall -Werror, VC++ \ W4 \ Wx). – Clifford
@Clifford: ... và tôi muốn làm cho hàm đó định nghĩa một mẫu thử nghiệm. –