2012-03-31 6 views
4

LLP64の代わりにLP64を使用することが可能かどうかを知りたい場合は、GCCやIntel C++などの別のコンパイラを使用できますが、 VC++をさまざまな理由で使用するのが好きです。MS Visual C++でLLP64ではなくLP64を使用する方法

Microsoftヘッダーなどとの互換性の要件はなく、LIBCを既にランタイムライブラリとして使用しています。

+1

なぜですか? 64ビット整数が必要な場合は、 'int64_t'を使用してください。 –

+1

このロジックを使うと、 'long'、' long long'、 'short'の必要はありません。 – James

+0

特定の幅の整数型が必要な場合は、特定の固定幅の整数型を使用する必要があります。それがこれらのタイプのためのものです。 –

答えて

-2

そんなに時々 "あなたがすることはできません" である

/Dlong="long long" 

を試してみたが、これは危険な

+2

これは本当に悪いコーディングの練習ではなく、すべてのシステムコールと他のライブラリへの呼び出しを破ります。それをしないでください。既存の「long long」を「long long long long」に置き換えることに注意してください。 – rdb

2

可能性があり

\#define long long long 

または

/Dname[= | # [{string | number}] ] 

を使用しようとすることができますまた答え。それは可能ではないため(backwards compatibilityの場合)代わり

使用ポータブルタイプ(#include <cstdint>):

  • int8_tから8ビット整数
  • int16_t - 16ビット整数
  • int32_tから32ビット整数
  • int64_t - 64ビット整数

P.S.回避策として、LP64 even on Windowsを使用するCygwinを使用することができます。

関連する問題