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

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

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

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

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

1回答

7472閲覧

プログラミング初心者です C言語

sagonopsp

総合スコア7

C

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

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2015/08/18 08:31

初心者なので質問の仕方に問題がありましたらお詫び申し上げます。

現在大学の研究でプログラミングを扱っており、
まだ勉強中の身なのですが
有限要素法のプログラムを実行する際に以下のようなエラーが出て困っています。

説明 ファイル
fatal error LNK1136: ファイルが無効であるか、または壊れています。 p70.res

p70.resファイルを消すと以下のようなエラーが出てきます。

error LNK2019: 未解決の外部シンボル FORMAT が関数 MAIN で参照されました。
fatal error LNK1120: 外部参照 1 が未解決です。

コンパイルはできるのですがビルドするとエラーが出ます。
使用ソフトはvisual studio 2010です。

分かりにくくて申し訳ありませんがご教授お願いします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

C/C++で他のファイルに定義されている関数を呼び出す場合、
コンパイル: 関数宣言(通常ヘッダファイルに書かれている)だけあればよい
リンク: 関数の実体(プログラムのコードをコンパイルしたもの)がないとだめ
となっています。

LNK2019 は、「一緒にリンクされるライブラリの中を探したけれど関数formatが見つからなかった」というエラーです。つまり関数formatの実体が入っているライブラリを、リンクするライブラリに追加する必要があります。

関数formatがどのライブラリに入っているか、についてですが
① MFCのCStringTクラスにメソッドがあります。
MSDN CStringT

main関数のエラーになっている個所で、format関数の呼び出し方を確認してください。
①のCStringTのメソッドであれば、Visual Studio のプロジェクトのプロパティを開いて
構成プロパティ - 全般 - MFCの使用 で設定すればよいかと思います。

② CStringTのメソッドでない場合、私の知っている範囲ではOpenCVのライブラリの中にも関数formatがあります。(あるいは他のライブラリかもしれません)
"format”を選択して、右クリック - 定義へ移動 とすると関数宣言に飛びます。
(OpenCVだと core.hpp に飛びます)
このヘッダファイルが属しているライブラリを一緒にリンクしてください。
構成プロパティ ー VC++ディレクトリ ー ライブラリディレクトリ に該当するフォルダ名を追加
構成プロパティ ー リンカー - 入力 ー 追加の依存ファイル にライブラリファイル名を追加
してください

ごめんなさい。時間が無くなっちゃって。
MSDNか使っているライブラリが分かればそのHPなどで、設定方法は確認してください。

投稿2015/08/18 10:11

mie

総合スコア229

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

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

sagonopsp

2015/08/19 07:24

回答を参考にし、書いたプログラムとにらめっこをした結果、 入力ミスによるものだということが分かりました。 回答を頂くことができなければ私は今後もずっと同じようなミス 繰り返すことになっていたことでしょう。 このたびは大変勉強になりました。 ご教授いただきありがとうございました。
mie

2015/08/19 07:29

解決してよかったですね。 有限要素法は、ずっと昔に半年お勉強して降参しました。 頑張ってください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問