
No.7ベストアンサー
- 回答日時:
#4です。
>doubleで計算したsleeptimeでsleepしたかったものでして。
Sleepの単位はmsです。それ以下の単位、例えば0.1msとかでのsleepはできません。
また、最大sleeptimeもDWORDの最大値までです。
なので、doubleで指定することには意味がありません。もし、0.1msとかでsleepをしたいのなら、Sleepではない、別の方法を考える必要があります。
計算過程でdoubleを使いたいだけで、結果のsleeptimeはDWORDで十分であるというならば、明示的にDWORDでキャストするのが望ましいでしょう。
ASSERTなどでチェックすると、より完璧ですね。
No.6
- 回答日時:
>doubleからキャストしてDWORDにするというのは出来ないのですね。
できなくは有りません。
まず、根本的な問題ですが、
警告やエラーを消す為だけの修正は避けるべきです。
特に警告の意味を理解せずに修正するのは愚の骨頂、
そのまま重大な問題に発展する恐れがあります。
なぜ、はじめからDWORDが使われていないのか?
なんのためにキャストする必要があるのか?
キャストを行ったときどういうことが起こるのか?
など、きちんと理解し説明しない限り問題は
解決しないでしょう。
>double sleeptime=500;
>Sleep(sleeptime);
windows環境で上記のコードだけなら、
他の方のおっしゃっている通り、
DWORD sleeptime=500;
Sleep(sleeptime);
で良いでしょうが
もしも、提示されいてる以外のコードで
sleeptimeが使われているとすれば、
本当にそのロジックでよいかを
再確認するべきだと思います。
No.4
- 回答日時:
警告を消すのが目的なら、#pragma warnを使っても消せます。
いったいなんのために警告を消したいのでしょうか?
sleeptimeがdoubleでなければならない理由があるのでしょうか?
この回答へのお礼
お礼日時:2008/12/10 20:13
doubleで計算したsleeptimeでsleepしたかったものでして。
警告の消し方、参考になりました。
ご回答ありがとうございます。
No.1
- 回答日時:
sleeptimeの型をDWORDにしてください。
Sleep()関数の引数はDWORDです。
参考URL:http://msdn.microsoft.com/ja-jp/library/cc429358 …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
たくさんの数の平均を求める方...
-
C 開放してるのにエラー(doubl...
-
timeGetTimeについて
-
c言語の問題
-
至急です! マクロ定義で #defi...
-
C言語の型による処理速度の違い
-
c言語で、繰り返し文の中で、0....
-
C言語 関数プロトタイプ宣言の...
-
2次方程式の解を求めるプログ...
-
C言語でintをdoubleに
-
c言語でDFTのプログラムを作成...
-
C#イベント中の戻り値の設定の...
-
最早開始時間と最遅完了時刻を...
-
20'(角度)の計算がわかりま...
-
信頼区間の1.96や1.65ってどこ...
-
Aの値からBの値を除するとは??
-
数字以外が入力されたらエラー...
-
値差の%計算方法について
-
「Aに対するBの割合」と「Aに対...
-
#defineが使用するメモリ領域に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラムでの数字につく”f”の...
-
C 開放してるのにエラー(doubl...
-
c言語で、繰り返し文の中で、0....
-
doubleの変数にintとintの割り...
-
至急です! マクロ定義で #defi...
-
C言語 関数プロトタイプ宣言の...
-
浮動小数点の定数
-
DWORDの警告
-
C言語の型による処理速度の違い
-
C言語で台形公式を使った二重積...
-
C言語を実行すると-infが出てき...
-
int とdoubleの比較
-
C言語初心者 構造体 課題について
-
たくさんの数の平均を求める方...
-
EXE1→DLL→EXE2数値を受け渡す方法
-
プログラミングでのテイラー展開
-
C++初心者です。簡単なスコア計...
-
【C言語】二階微分方程式をル...
-
fgets()による繰り返し入力(c言語)
-
2分法で方程式の複数の解を自...
おすすめ情報