私のプロトタイプ ファイル proto.h には、
#define LOOP_LIMIT 90.00
#define PI 3.14159
#ifndef _PROTO_H
#define _PROTO_H
#include <stdio.h>
#include <math.h>
#include "get_problem.c"
#include "deg_to_rad.c"
#include "evaluate_sin.c"
#include "evaluate_cos.c"
#include "evaluate_tan.c"
int main(void);
int get_problem();
double deg_to_rad(int deg);
void evaluate_sin(int deg);
void evaluate_cos(int deg);
void evaluate_tan(int deg);
#endif
私の lab7.c にはメイン関数があり、proto.h をインクルードしています。「make」コマンドを使用して Linux でコンパイルしようとすると、次のメッセージが表示されます。
gcc -c deg_to_rad.c deg_to_rad.c: 関数「deg_to_rad」内:
deg_to_rad.c:2: エラー: 'PI' が宣言されていません (この関数で最初に使用)
deg_to_rad.c:2: エラー: (宣言されていない識別子はそれぞれ一度だけ報告されます
deg_to_rad.c:2: エラー: 各関数に表示されます。)
make: * [deg_to_rad.o] エラー 1
メイン関数が LOOP_LIMIT を正しく使用しているため、これを本当に理解していませんが、PI が機能していません。
deg_to_rad.c:
double deg_to_rad(int deg) {
double rad = (PI * deg) / 180;
return rad;
}