Перейти к содержанию

Проблема с sqrt()


Рекомендуемые сообщения

#include <math.h>

int main()

{

double x = 25.0;

sqrt(x);

return (0);

}

при компиляции пишет:

> gcc -o test test.c

/tmp/ccXPLWvz.o: In function `main':

test.c:(.text+0x36): undefined reference to `sqrt'

collect2: ld returned 1 exit status

хотя при:

sqrt(25.0);

всё нормально..

что не так?

Как заставить sqrt() обработать x?

Ссылка на комментарий
Поделиться на другие сайты

Не знаю, как может работать sqrt(25), может это дефайном сделано? Hm

А вообще sqrt требует линковки с libmath:

gcc -o test test.c -lm

Ссылка на комментарий
Поделиться на другие сайты

Все правильно. При вызове sqrt(25) используется функция sqrt с аргументом int, а при вызове sqrt(25.0) - double. Угадайте с одного раза, какая из них правильная Smile

При использовании double или float даже целые числа рекомендуется писать в формате 25.0 во избежание подобных проблем.

P.S. AccessD, сл. раз используйте тег CODE.

Ссылка на комментарий
Поделиться на другие сайты

2 EL[michlen]

EL[michlen

писал(а) ср, 08 февраля 2006 20:47]P.S. AccessD, сл. раз используйте тег CODE.

Вспомнилось SQ, фраза "не пишите все подряд маленькими буквами, что позволено Алану Коксу, не позволено Вам" Smile Эт я к тому, что использовал \[code\] раз или два, для выделения кода мне больше \[b \]нра. И ничо, нормально Smile

ЗЫ. Оффтоп, это скорее к создателям фудфорума, а все же согласитесь, хорошо бы иметь аналог тэгов \[php\] для др. языков...

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...