Xin chào tôi đang sử dụng Linux 12.04 và geany để mã hóa. Mã tôi đang viết trong C làm việc hoàn toàn tốt cho đến khi tôi sử dụng lệnh sqrtf để tìm căn bậc hai của một phao. Lỗi: HAC3.c: (. Văn bản + 0xfd7): tham chiếu không xác định đối với `sqrtf '.sqrtf undefined tham chiếu đến `sqrtf 'trong c
Phần mã tôi đang sử dụng sqrtf:
float syn(float *a, float *b, int dimensions)
{
float similarity=0;
float sumup=0;
float sumdown=0;
float as=0;
float bs=0;
int i;
for(i=0; i<dimensions; i++)
{
sumup = sumup + a[i] * b[i];
as = as + a[i] * a[i];
bs = bs + b[i] * b[i];
}
sumdown = sqrtf(as) * sqrtf(bs);
similarity = sumup/sumdown;
return similarity;
}
tôi bao gồm math.h nhưng điều này dường như không có vấn đề. Vì vậy, tôi tự hỏi là có cách nào để sửa chữa geany vì vậy điều này sẽ không đến một lần nữa? Tôi có ít kiến thức để cố gắng giải thích nếu có thể.
sqrtf từ c99. và tùy chọn liên kết. Ví dụ: 'gcc prog.c -std = c99 -lm' – BLUEPIXY
Để tham khảo sau: nếu có gì đó không biên dịch/liên kết: hãy xem ** man -k **, trong trường hợp ** man - k sqrtf ** ... nó sẽ cho bạn biết cách sử dụng nó. –
tink
man -k sqrtf là gì? –