Сообщение об ошибке «неопределенная ссылка на sqrt» обычно появляется, когда вы пытаетесь использовать функцию квадратного корня (sqrt`) в своем коде, но компоновщик не может найти реализацию. функции. Эта ошибка часто встречается в языках программирования C и C++. Вот несколько способов решения этой проблемы:
-
Включите математическую библиотеку:
В C и C++ функцияsqrtопределена в математической библиотеке. Чтобы использовать его, вам необходимо включить математическую библиотеку в свой код. Вы можете сделать это, добавив следующую строку вверху файла:#include <math.h>Вот пример вычисления квадратного корня числа:
#include <stdio.h> #include <math.h> int main() { double number = 16.0; double result = sqrt(number); printf("Square root of %lf is %lf\n", number, result); return 0; } -
Свяжите математическую библиотеку во время компиляции.
Если вы компилируете код с помощью компилятора командной строки, вам может потребоваться явно связать математическую библиотеку. Например, в GCC это можно сделать, добавив флаг-lmв конце команды компиляции:gcc yourcode.c -o yourprogram -lmЭто указывает компилятору связать математическую библиотеку (
-lm) во время процесса компиляции. -
Проверьте наличие опечаток и синтаксических ошибок.
Убедитесь, что вы не ошиблись в имени функции и не допустили синтаксических ошибок в своем коде. Даже небольшая опечатка может привести к ошибке «неопределенная ссылка на sqrt». -
Убедитесь в правильности настроек компилятора.
Если вы используете интегрированную среду разработки (IDE), убедитесь, что параметры компилятора правильно настроены для включения математической библиотеки.