トップページ > プログラム > 2014年04月07日 > AB68SSs6

書き込み順位&時間帯一覧

31 位/161 ID中時間01234567891011121314151617181920212223Total
書き込み数0100100000000000000000002



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
【初心者歓迎】C/C++室 Ver.90【環境依存OK】

書き込みレス一覧

【初心者歓迎】C/C++室 Ver.90【環境依存OK】
194 :デフォルトの名無しさん[sage]:2014/04/07(月) 01:28:14.02 ID:AB68SSs6
SYSTEMTIMEの引き算をしたくて
http://stackoverflow.com/questions/8699069/difference-between-two-systemtime-variable
の回答4にある
SYSTEMTIME operator-(const SYSTEMTIME& pSr,const SYSTEMTIME& pSl)
をそのまま使って、

SYSTEMTIME ts,te,tdif;
GetSystemTime(&ts);
Sleep(1000);
GetSystemTime(&te);
tdif = te - ts;

としたら、最後の引き算の行で、
エラー 1 error C2676: 二項演算子 '-' : 'SYSTEMTIME' は、この演算子または定義済の演算子に適切な型への変換の定義を行いません。(新しい動作; ヘルプを参照)

と出るのですが、解決方法がわかりません。どうしたらよいでしょうか?
【初心者歓迎】C/C++室 Ver.90【環境依存OK】
197 :デフォルトの名無しさん[sage]:2014/04/07(月) 04:21:05.28 ID:AB68SSs6
皆さん
アドバイスありがとうございました。
>>196
その通りでした。プロトタイプ宣言忘れていました。
無事に動いたのですが、実行結果がおかしいのです。
約1秒の差が計測できると思ったのですが、
tdifの中身を見ると、
wYear 1601 unsigned short
wMonth 1 unsigned short
wDayOfWeek 1 unsigned short
wDay 1 unsigned short
wHour 0 unsigned short
wMinute 0 unsigned short
wSecond 1 unsigned short
wMilliseconds 515 unsigned short
となっていますので

1601年1月1日0時間0分1.515秒
の差ということでしょうか?どういうことでしょうか?


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。