リンクについて・・・・(VisualC++ 2008 Express Edition)

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
究極の初心者

リンクについて・・・・(VisualC++ 2008 Express Edition)

#1

投稿記事 by 究極の初心者 » 16年前

リンクについて、質問させて頂きます。
初めは、サイトをめぐり、簡単に学んでいたのですが、サイトよりきりで説明が変わったりするので、只今、参考書を片手にC言語を学んでいます。

その参考書で、ファイルを分割するという内容がでました。
ただ、コンパイラは人によって違うということで、明確な答えは参考書に載っていません。

私は、「VisualC++ 2008 Express Edition」のコンパイラを使用しています。

参考書には「説明書を参考にしてください」と、書いてあったのですが、ヘルプを参考にしても、いまいちよくわからなかったもので・・・・。


そこで、このコンパイラでのリンクのやり方が、正しいかを教えてください。

ヘッダファイル1つ
ソースファイル2つ

をリンクしたいとします。


1.ヘッダファイルで、追加>新しい項目>テンプレートはヘッダーファイル>「head」という名前で作成
2.ヘッダファイルにて、関数プロトタイプ(仮に、max()関数とします)を宣言。
3.ソースファイルで、追加>新しい項目>テンプレ-トはC++ファイル>「max」という名前で作成
4.ソースファイルに、max()関数のコードを入力。
5.3と同じく、ソースファイルに「main」という名で新規作成。
6.main()関数(プログラム本体?)のコードを入力。(このとき、#include "head.h"も最初に入力する)


一応、これでビルドしたところ、問題なくできたのですが、リンクのやり方というのは、これでいいんでしょうか?

コードを張ると、若干説明しにくくなるような気がしたので、貼りませんでしたが、貼ったほうがいい場合は、貼らせていただきます。

リンクのやり方として、これで正しいかどうか、お分かりになる方は、どうか教えてくださいm(_ _)m

御津凪

Re:リンクについて・・・・(VisualC++ 2008 Express Edition)

#2

投稿記事 by 御津凪 » 16年前

VisualC++ は自動でリンクを行ってくれます。(つまり、正しいです)

正確に言えば、プロジェクトに追加されているソースファイルをコンパイルし、
そのままリンクされます。
(ビルドを実行したときに出る出力ウインドウを見れば判ると思います)

YuO

Re:リンクについて・・・・(VisualC++ 2008 Express Edition)

#3

投稿記事 by YuO » 16年前

おおざっぱに言うと,
ビルド ≒ メイク = コンパイル + リンク
です。

究極の初心者

Re:リンクについて・・・・(VisualC++ 2008 Express Edition)

#4

投稿記事 by 究極の初心者 » 16年前

お二方、ありがとうございました。

>御津凪さん

VisualC++は自動で行ってくれるのですね。
これは、便利ですね・・・・・。
ご回答、ありがとうございました^^

>YuOさん

>ビルド ≒ メイク = コンパイル + リンク

ちょっと、まだ始めたばかりで、メイクという言葉を知らない者でして、今ネットで調べてみたところ、まだ学んでいない言語(?)みたいでした^^;
なので、ちょっと理解できない部分もありますが、ビルドとは似て異なり、コンパイルとリンクを合わせたもののことを言うみたいですね。
これ、参考書の逆引きにメイク(make)って単語ないけど、学ぶ必要ないのかな・・・・・?

もしかして

>一応、これでビルドしたところ、問題なくできたのですが、リンクのやり方というのは、これでいいんでしょうか?

の部分は、正確には、
>一応、これでメイクしたところ、問題なく・・・・・・・

っという意味でしょうか・・・・?

と、とりあえず、後で調べてみます。
ご回答ありがとうございました^^

YuO

Re:リンクについて・・・・(VisualC++ 2008 Express Edition)

#5

投稿記事 by YuO » 16年前

解決されていますが……。

ビルドとメイクは,細かいところは別として,
・多くの環境では,プログラムmakeを使うことが多い (ので「メイク」と呼ばれることがある)
・最近のVisual Studioやmsbuildエンジンではビルドと呼ぶ
といった程度の違いです。どちらも,
・何らかの前処理 (あれば)
・コンパイル
・何らかの中間処理 (あれば)
・リンク
・何らかの後処理 (あれば)
が行われます。
# UNIX系では,インストールにもmakeを使うことがありますね。

参考書だと,メイクの方が使われるかなぁ,と思って書いたのですが,逆に混乱させてしまったようですね。

究極の初心者

Re:リンクについて・・・・(VisualC++ 2008 Express Edition)

#6

投稿記事 by 究極の初心者 » 16年前

>YuOさん

わざわざ配慮して下さったんですね。
ありがとうございます。

どうやら、今使ってる参考書ではmakeは使用しないみたいです^^;
必要とあらば、後々学んでみようかと思います。

わざわざ、御答ありがとうございました^^

閉鎖

“C言語何でも質問掲示板” へ戻る