Проблемы с компиляцией C программы - PullRequest
1 голос
/ 14 марта 2020

Я новичок в C программировании, и я попытался выполнить некоторые упражнения, чтобы научиться программировать. Я сделал много маленьких и простых программ, но у меня возникли проблемы. Я не могу скомпилировать это. Я linux пользователь (linux mint) и тоже использую VS Code. Терминал покажет мне проблему с «ceil». Как правильно использовать «ceil»? Кто-то может мне помочь? Большое спасибо.

Вы можете увидеть мой код ниже:

#include <stdio.h>
#include <math.h>

int main(void){

    float pi = 3.14159;
    float raio, area, renTinta, qtdTinta, qtdLata;
    float arredonda_pcima = 0.0;

    printf("\nQual o raio da mesa?(medida em metros)\n");
    scanf("%f", &raio);
    printf("\nQual o rendimento da tinta?(padrão 5m/L\n");
    scanf("%f", &renTinta); 

    area = pi * ( raio * raio );

    qtdTinta = area / renTinta;
    qtdLata = qtdTinta / 10;
    arredonda_pcima = ceil(qtdLata);

    printf("\npara uma mesa de raio %.2f e área de %.2f será consumido %.2f de tinta e será(ão) necessária(as) %.0f latas\n\n", raio, area, qtdTinta, arredonda_pcima );


    return 0;
}

Я получаю сообщение через терминал ...

Выполнение задачи: / usr / bin / g cc -g '/ home / gilmar / Документы / Projeto FA C em C / fac16. c' -o '/ home / gilmar / Документы / Projeto FA C em C / fac16' <

/ tmp / cctqUJ2D.o: В функции main': /home/gilmar/Documents/Projeto FAC em C/fac16.c:19: undefined reference to ceil 'collect2: error: ld возвращено 1 состояние выхода Процесс терминала завершается с кодом выхода: 1

Терминал будет повторно используется задачами, нажмите любую клавишу, чтобы закрыть его.

1 Ответ

0 голосов
/ 14 марта 2020

Вы используете функцию правильно, проблема в том, что компилятор не может найти функцию ceil(), вероятно, из-за связи ошибок с библиотекой <math.h>. Если вы компилируете из терминала, как предлагали другие, попробуйте поставить -lm в конец строки ( "неопределенная ссылка на" pow "" даже с math.h и ссылкой на библиотеку -lm для подробного объяснения). В противном случае, если вы пытаетесь запустить его на VS Code, проверьте, включили ли вы библиотеку в ваш проект (go на вкладку «Свойства») и попробуйте найти что-то вроде «Включить каталоги».

...