Visual Studio 2013 SP8 [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
NSFOS 誰か見てたら教えてください
Windows10(64bit) + VisualStudio2013で64bitソフトを作ろうとしています(構成マネージャーでx64にしています)
64bit整数の演算をしたいのですが正常にできません(32bitのままみたいな動作をします)
どうすれば正しく64bitの整数演算ができますか?
ちなみにサンプルプログラムは下記の通りです
win32とx64を切り替えてもsize_tのサイズが4か8かで変わるだけで他は同じ結果になります
wchar_t buff[1024];
wchar_t line[1024];
wsprintf(buff, L"変数サイズ一覧\n");
wsprintf(line, L"char = %lu\n", sizeof(char));
wcscat_s(buff, 1024, line);
wsprintf(line, L"short = %lu\n", sizeof(short));
wcscat_s(buff, 1024, line);
wsprintf(line, L"int = %lu\n", sizeof(int));
wcscat_s(buff, 1024, line);
wsprintf(line, L"long = %lu\n", sizeof(long));
wcscat_s(buff, 1024, line);
wsprintf(line, L"size_t = %lu\n", sizeof(size_t));
wcscat_s(buff, 1024, line);
wsprintf(line, L"long long = %lu\n", sizeof(long long));
wcscat_s(buff, 1024, line);
wsprintf(line, L"\n演算テスト\n");
wcscat_s(buff, 1024, line);
wsprintf(line, L"ULONG_MAX = %lu\n", ULONG_MAX);
wcscat_s(buff, 1024, line);
wsprintf(line, L"(size_t)ULONG_MAX + 100 = %lu\n", (size_t)ULONG_MAX + (size_t)100); //BAD !! 99になる
wcscat_s(buff, 1024, line);
wsprintf(line, L"(long long)ULONG_MAX + 100 = %lu\n", (long long)ULONG_MAX + (long long)100); //BAD !! 99になる
wcscat_s(buff, 1024, line);
MessageBox(buff, L"テスト"); それ疑ってやったんですが
(size_t)ULONG_MAX + 100 = lu
(long long)ULONG_MAX + 100 = lu
という表示になりました
wsprintf(line, L"(size_t)ULONG_MAX + 100 = %llu\n", (size_t)ULONG_MAX + (size_t)100);
wcscat_s(buff, 1024, line);
wsprintf(line, L"(long long)ULONG_MAX + 100 = %llu\n", (long long)ULONG_MAX + (long long)100);
wcscat_s(buff, 1024, line);
でも確かにそういう解説をしてるWEBページは有るんですよね
あと表示の問題という示唆をいただいたので変数経由で計算させてデバッガーで値を確認したところ正しく計算されていました
なぜ%lluが正常に機能しないのかはわかりませんが計算はちゃんとされているらしい事を確認できたのでよかったです
ありがとうございます stdio.hのswprintfは%lluが使えるけど
Win32APIのwsprintfは%lluは無いので%I64uで double pow(double x, double y)ってまともに動かないの?
pow(0.008853, 0.333333) = 0.000000 になってしまう ※printfの書式は%lf
これほんとうはもっと下の桁まであるんだけど、そっちだと 1488.000000とかになる
ちなみに電卓だと0.206947…たぶんこれが正しい
もう訳がわからないよ(´・ω・`) floatが呼ばれてるかプロトタイプ宣言忘れてるかincludeしてないか math.hインクルードしてませんでした
したらまともになりました
…コンパイルエラーにして欲しかった
どうもありがとうございます 非整数の累乗を使う機会がなくて
#define POW2(x) ((x)*(x))とかばかり使ってたから遭遇経験がありませんでした/// エラーにしないまでも/W3くらいはしておた方がいいね VisualStudio2013で利用可能な最後のWindowsSDKって何処でてにはいりますか(識別するためのバージョン番号的なものはなんですか)?
最新のものだとWindows10(1903)用でVisualStudio2017以降が必要らしいです
https://developer.microsoft.com/ja-jp/windows/downloads/windows-10-sdk
以前のバージョンも手に入りますがどれがVS2013で利用可能かどうかがわかりません
https://developer.microsoft.com/ja-jp/windows/downloads/sdk-archive 追加
目的はDirectShow及びMediaFoundation関連のファイルの取得です
※GraphEdit.exeとか各種サンプルとか
VisualStudio2013のバージョンは以下の通りです
Professional 2013 Version 12.0.40629.00 Update 5 ファイルサンプルだけなら対応してなくてもいいだろ。最新のから拾っとけよ >>129
なんで目的がそれで最新のSDKを求めるのか謎なんだが
https://github.com/microsoft/Windows-classic-samples
とうにSDKからは消えてるWindows 7 SDKの頃のサンプルは
これのWin7Samplesにbaseclassesも含めて入ってる
GraphEdit/TopoEditは元からどのSDKでも残ってるだろ visual studio2013ダウンロードしたいんですけど今ならどうしたらいいですか? ■ このスレッドは過去ログ倉庫に格納されています