質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

include

あるファイルで定義された関数や処理を、別のファイル上でも使用できるようにするプロセスをincludeと呼びます。

Q&A

解決済

2回答

7718閲覧

C言語 include時にundefined referenceとなる

teityura

総合スコア84

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

include

あるファイルで定義された関数や処理を、別のファイル上でも使用できるようにするプロセスをincludeと呼びます。

0グッド

0クリップ

投稿2019/06/02 14:55

sum.h をインクルードして、
sum.h で プロトタイプ宣言をしており、
sum.c に sum()があります。
なぜ、未定義の参照になるのか分かりません。

C

1# grep -n "" * 2main.c:1:/* main.c */ 3main.c:2: 4main.c:3:#include <stdio.h> 5main.c:4:#include "sum.h" 6main.c:5: 7main.c:6:int main(void) { 8main.c:7: int value; 9main.c:8: value = sum(50, 100); 10main.c:9: printf("%d\n", value); 11main.c:10: 12main.c:11: return 0; 13main.c:12:} 14 15sum.c:1:/* sum.c */ 16sum.c:2: 17sum.c:3:int sum(int min, int max) { 18sum.c:4: int num; 19sum.c:5: num = (min + max) * (max - min + 1) / 2; 20sum.c:6: 21sum.c:7: return num; 22sum.c:8:} 23 24sum.h:1:/* sum.h */ 25sum.h:2: 26sum.h:3:int sum(int min, int max); 27 28# gcc main.c 29/tmp/cc7uPCRK.o: In function `main': 30main.c:(.text+0x13): undefined reference to `sum' 31collect2: ld returned 1 exit status

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

gcc main.c sum.c ・・・一緒にコンパイルしてますか?

投稿2019/06/02 15:01

cateye

総合スコア6851

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

teityura

2019/06/02 15:04

一緒にコンパイルしたらできました。 ありがとうございます。
guest

0

ベストアンサー

gcc -o a.out main.c sum.c
でコンパイルしてみてください。

投稿2019/06/02 14:59

TaroToyotomi

総合スコア1430

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

teityura

2019/06/02 15:03

コンパイル時に指定しなきゃダメだったんですね。 ちゃんと動きました!ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問