win32APIで学習しています。
「warning C4013: 関数 '_tcscmp' は定義されていません。int 型の値を返す外部関数と見なします。」
という警告が出るのですが、消すにはどうしたらよいのでしょうか?
C言語
1#include <string.h>
は記述したのですが...

回答3件
あなたの回答
tips
プレビュー
C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。
Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。
関数(ファンクション・メソッド・サブルーチンとも呼ばれる)は、はプログラムのコードの一部であり、ある特定のタスクを処理するように設計されたものです。
文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。
C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。
Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。
関数(ファンクション・メソッド・サブルーチンとも呼ばれる)は、はプログラムのコードの一部であり、ある特定のタスクを処理するように設計されたものです。
文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。
0グッド
0クリップ
投稿2017/02/19 00:46
win32APIで学習しています。
「warning C4013: 関数 '_tcscmp' は定義されていません。int 型の値を返す外部関数と見なします。」
という警告が出るのですが、消すにはどうしたらよいのでしょうか?
C言語
1#include <string.h>
は記述したのですが...
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
ベストアンサー
この関数はWindows固有の関数でして標準ヘッダーであるstring.hには含まれないようです。
#include <tchar.h>
が必要と思います。
分かりやすいページを見つけられなかったのですが・・・一応下記ページにtchar.hで_tcscmpがサポートされていることがひっそり記述されてます。
どのヘッダーをincludeすべきかはあて推量ではなくきちんと調べるのがコツだと思います。
投稿2017/02/19 01:18
総合スコア18404
0
こんにちは。
ここに こっそり かかれてますが、#include <tchar.h>
が必要そうです。
これはこっそりすぎですね。見つけることができる人はあまりいないと思います。
私は、_T("")マクロについてで見つけました。
投稿2017/02/19 01:22
編集2017/02/19 01:33総合スコア23274
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/02/19 01:27
0
すでに解決済みになっていますが、「Tchar.h における汎用テキストのマッピング」も参照してみると良いかもしれません。
ただし、tchar系はMicrosoft(Visual C++)固有の機能であり移植性がないので、それを使わなければ困るという特別な理由がない限りは使わない方がいいです。元々はWindows 9x系とWindows NT系で異なる文字コード(前者はマルチバイト文字、後者はワイド文字)の違いを吸収して、同じソースで両方に対応するプログラムを書けるようにするという目的で実装されたものですが、それ故に(C/C++標準に則った)外部ライブラリーの利用などでトラブルになることが多いです。
すでに9x系が消滅した現在でも「互換性」の観点から残されているだけに過ぎません。ですので、最初にどちらの文字コードを使うかを決めてコーディングした方がいいでしょう(要するに文字コードとしてcharとwchar_tのどちらにするかを決めるというだけです)。
投稿2017/02/19 03:03
総合スコア5944
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/02/19 02:40