0
誰かが私を助けてくれることを願っています。私はCS50xを使って作業しており、欲張りなPset1に取り組んでいます。コードをコンパイルするたびに次のエラーが発生します。Cラウンド関数がエラーをスローしています: "round 'への未定義参照..."
/tmp/greedy-46be96.o: In function `main':
greedy.c:(.text+0x95): undefined reference to `round'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
助けていただければ幸いです。質問があいまいな場合はお詫び申し上げます。私は人のラウンドを端末に使用していて、さまざまな解決策を試していましたが、何も機能していませんでした。
#include <stdio.h>
#include <cs50.h>
#include <math.h>
int main(void)
{
float owed;
float change;
float quarter = 0.25;
float dime = 0.10;
float nickel = 0.05;
float penny = 0.01;
do {
printf("How much change is owed?: ");
owed = GetFloat();
} while(owed <= 0);
change = round(owed * 100);
}
私は自分のコードをコンパイルするには、このコマンドを使用しています:あなたは、コンパイル時に
clang -o greedy greedy.c -lcs50
数学ライブラリにリンクしていないと思います(末尾のリンカーオプションに '-lm'を追加してください) – purplepsycho
数学ライブラリをリンクしてください。 GCC '-lm'では。 – s7amuser
ヒント:これはコンパイルエラーではなく、リンクエラーです。コードのコンパイル/リンクに使用するコマンドを貼り付けてください。 – mroman