

VC++.NETの環境です。
DOWRD dw1 = 1;
int i = 2; と定義し
ここで
if ( i > dw1 ){
何かの処理;
}
とコーディングすると
warning C4018: '>' : signed と unsigned の数値を比較しようとしました。
のワーニングがでます。
これは、DWORDがint型でなくunsigned int型のようにも見えます。
ある本によれば(VC++.V.NET逆引き大全500の極意)
DWORD はint型であると記述されています。
もし、int型ならこのワーニングはでないはずなのですが、
なぜでるのでしょうか。又、DWORDの実際の型は何なのでしょうか。ご存じのかたおりましたら、教えていただけませんでしょうか。
No.2ベストアンサー
- 回答日時:
型定義が知りたいのならば、宣言ファイルを見れば疑問を挟む余地もありません。
DWORD型はwindef.hで
"typedef unsigned long DWORD;"
と宣言されています。
Visual Studioを使っているのならば、知りたい型の上にマウスポインタを置いて右クリック、ポップアップメニューの「定義へ移動」または「宣言へ移動」で簡単に知ることが出来ます。
>DWORD型はwindef.hで
>"typedef unsigned long DWORD;"
>と宣言されています。
具合的な確認方法まで提示していただき、ありがとうございました。
実は、int型とDWORD型はその本によれば同じ型ということなので、使用する変数の型、関数の戻り値を
どちらにするかで悩んでいました。(UNIXからの移植もありint型にする方を優先していましたが)
これで、int型で統一し、DWORD型がunsigned intの用途の場合にのみ使用するようにする根拠がもてました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語 共用体について コマンドライン引数で値を2つ入力したときに、argv[2]の値をUNI u1 4 2022/04/25 20:34
- C言語・C++・C# アセンブラ指令 3 2023/06/17 14:47
- C言語・C++・C# C言語の課題が出たのですが自力でやっても分かりませんでした。 要素数がnであるint型の配列v2の並 3 2022/11/19 17:41
- C言語・C++・C# C 言語の Gauss Jordan 法について 2 2022/12/28 11:16
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- Windows 10 (続き2)2つのウィンドウ選択時の表示について 3 2023/08/21 22:41
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# カードシャッフルのブログラムを使ってc言語でブラックジャックをしたい 2 2022/04/12 15:13
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
このQ&Aを見た人はこんなQ&Aも見ています
-
DWORDとcharの変換
C言語・C++・C#
-
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
WORD型をCString型に変換する方法
C言語・C++・C#
-
-
4
DWORDって
C言語・C++・C#
-
5
wsprintf関数の使い方について
C言語・C++・C#
-
6
<unistd.h>をVisualStudioでつかえるようにする
C言語・C++・C#
-
7
charからLPTSTRへの変換方法
C言語・C++・C#
-
8
CStringのFindで文字列検索を行いたいのですが
C言語・C++・C#
-
9
std::stringからLPCWSTR型への変換
C言語・C++・C#
-
10
CString から LPCTSTRの型に変換
C言語・C++・C#
-
11
バッファとは何ですか
C言語・C++・C#
-
12
静的でないメンバ関数の呼び出しが正しくありません
C言語・C++・C#
-
13
ボタンの表示の色、フォントを変更したい
C言語・C++・C#
-
14
ソース内の行末に\\
C言語・C++・C#
-
15
unsigned long long 型のフォーマット指定子
C言語・C++・C#
-
16
INT64対応のprintf系関数はありますか?
C言語・C++・C#
-
17
0xffffとは?
C言語・C++・C#
-
18
MFCダイアログボックスを最前面に表示
C言語・C++・C#
-
19
MFC ダイアログ上のID取得について
C言語・C++・C#
-
20
LPSTR型の初期化について
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
visualstudio C# テキストボッ...
-
DWORDの実際の型は何でしょうか
-
C++でboolにintの値を代入する...
-
long型の定数の末尾にLを付ける...
-
main.c:7:43: warning: implici...
-
C++のfor文について
-
DLLでLIBファイルが作成されない
-
enumについて
-
直接アドレス指定のポインタの...
-
intとINTの違いは?
-
typedef enumの使い方を教えて...
-
ビット操作について
-
ハンドルされていない例外が発...
-
2重定義って??
-
C言語の課題について
-
変数の型を定義しなかった場合...
-
【#define】 defineで定義した...
-
情報処理技術者試験は本当にC89?
-
C言語ゲーム製作途中(勉強中)
-
テンプレート関数でコンパイル...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
DWORDの実際の型は何でしょうか
-
visualstudio C# テキストボッ...
-
long型の定数の末尾にLを付ける...
-
C++のfor文について
-
C++でboolにintの値を代入する...
-
2重定義って??
-
main.c:7:43: warning: implici...
-
typedef enumの使い方を教えて...
-
プログラムの中で別のmainを呼...
-
変数の型を定義しなかった場合...
-
関数の実体定義にヘッダファイ...
-
ハンドルされていない例外が発...
-
構造体の要素すべてに対する四...
-
C言語のコンパイルエラー
-
DLLでLIBファイルが作成されない
-
sshdログの意味
-
DLLのLPSTR 項目の戻り値の取得...
-
enumについて
-
VC6でlong longでエラー?
-
【#define】 defineで定義した...
おすすめ情報