問題タブ [int64]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
76836 参照

c# - 64ビットPCのint.MaxValueとは何ですか?

2,147,483,647私は32ビットPCを持っているので、この行は私に答えを与えます。

答えは64ビットPCでも同じですか?

0 投票する
2 に答える
700 参照

.net - .net Int64 が Int32 のように動作するのはなぜですか?

.net プログラムで奇妙な動作を目撃しています:

Int64.MaxValue は 64 ビットを使用していることを確認しているように見えますが、Int64 が Int32 のように動作するのはなぜですか?

関連する場合、私は 32 ビット OS を使用しており、ターゲット プラットフォームは「すべての CPU」に設定されています。

0 投票する
2 に答える
900 参照

double - double の不正確な除算 (Visual C++ 2008)

QueryPerformanceCounter から返された時間値をミリ秒単位の double 値に変換するコードがいくつかあります。これは、カウントする方が便利だからです。

関数は次のようになります。

私が最近抱えている問題 (以前はこの問題はなかったと思いますし、コードに変更は加えられていません) は、結果があまり正確ではないということです。結果には小数は含まれませんが、1 ミリ秒よりも精度が低くなります。

デバッガーに式を入力すると、期待どおりの正確な結果が得られます。

double は 64 ビット整数の精度を保持できないことは理解していますが、現時点では、PerformanceCounter は 46 ビットしか必要としませんでした (そして、double は損失なしで 52 ビットを格納できるはずです)。分割を行う別の形式。

ここに私が得たいくつかの結果があります。プログラムはデバッグ モードでコンパイルされ、C++ オプションの浮動小数点モードはデフォルト (正確 (/fp:正確) ) に設定されました。

私のプログラムの結果と比較して、デバッガーのウォッチの精度が異なる理由を誰かが知っていますか?

更新: 変換と除算を行う前に、timerPerformanceCounter.QuadPart から 30270310439445 を差し引いてみましたが、現在はすべての場合で正確であるように見えます。この動作しか見られないのは、コンピューターのアップタイムが 16 日になり、値が以前よりも大きくなったためでしょうか? したがって、大きな数での除算の精度の問題であるように見えますが、ウォッチ ウィンドウで除算が依然として正しい理由はまだ説明されていません。結果に double よりも高精度の型を使用していますか?

0 投票する
1 に答える
902 参照

asp.net - 精度を損なうことなく、JavaScriptでInt64タイプの変数をシリアル化するにはどうすればよいですか?

精度を損なうことなく、JavaScriptでInt64タイプの変数をシリアル化するにはどうすればよいですか?私の開発プラットフォームはです。ネット。

0 投票する
2 に答える
4909 参照

active-directory - System.DirectoryEntry "uSNChanged" 属性値を Int64 に変更する方法

ディレクトリ サービス オブジェクトの "uSNChanged" 値の Int64 値を取得しようとしています。残念ながら、それは常にある種の COM オブジェクトとして返されます。Int64 へのキャスト、Int64.Parse() の呼び出し、Convert.ToInt64() の呼び出しを試しました。これらのどれも機能しません。

特定の DirectoryEntry オブジェクトについて、このコードはプロパティを表示します。

これは出力です:

その System.__ComObject を Int64 に変換するにはどうすればよいですか?


使用したソリューション:

これは、以下の marc_s のソリューションに基づいて使用したソリューションです。

0 投票する
6 に答える
48716 参照

c++ - LARGE_INTEGERSの操作

win32のMSdevstudioで、コードをCからC++に変換しています。古いコードでは、QueryPerformanceCounter()を使用して高速タイミングを実行し、取得した__int64値、特にマイナスと除算に対していくつかの操作を行いました。しかし、C ++では、QueryPerformanceCounter()が返すものであるため、LARGE_INTEGERを使用する必要があります。しかし、今、私が値に対していくつかの簡単な計算を試みて実行する行で、エラーが発生します:

エラーC2676:バイナリ'-':'LARGE_INTEGER'は、この演算子または事前定義された演算子に受け入れられる型への変換を定義していません

変数を__int64にキャストしようとしましたが、次のようになります。

エラーC2440:'型キャスト':'LARGE_INTEGER'から'__int64'に変換できません

これを解決するにはどうすればよいですか?

ありがとう、