
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
> lomg long型は64ビット整数となるのでしょうか?
long long型は少なくとも-9223372036854775807~+9223372036854775807の範囲を表現することができる符号付き整数型です。
実際の表現範囲は、<limits.h>の中のLLONG_MINおよびLLONG_MAXマクロを調べてください。
> 32ビットOSでも使用できるのでしょうか?
使用できるかどうかについては、OSが何であるかは直接関係ありません。
C99に対応したコンパイラであれば、例え8ビットのプラットフォームであっても使用できます。
> OS:Vine Linux3.1
> コンパイラ:gcc-3.2.2
この組合せで常にそうかどうかは分かりませんが、多くの場合、long long型は64ビットだと考えてよいでしょう。
なお、gcc-3.2.2でターゲットがh8300の場合、long long型は32ビットだったと思います。確か、gcc-3.4あたりから64ビットになったような記憶があります。
今回は関係ないと思いますが、念のため。
No.2
- 回答日時:
★gccには詳しくありませんが1つ。
・gcc v3.2.2 なら long long 型は使えると思います。
今回の質問は
>32ビットOSでも使用できるのでしょうか?
ですよね。
これは CPU によって使えるかどうか?
ということでしょ。
・私の推測ですが long long 型がもし利用できる処理系ならば、
CPU で 64 ビット整数が利用できなくても利用できるように
エミュレーションしてくれるように切り替わるのでは。
と思っています。実際に確認していないため CPU を調べて
実際にテストしてみないと分かりません。
テストする時も単純に long long 型が使えるだけではなく
処理速度にも差が出てくると思います。
・例えば VC++2003 以降では long long 型が利用できますが、
VC++ 6.0 では使えません。でも windows 用の型で ULONGLONG や
DWORDLONG 型があって擬似的に 64 ビット整数を使えるようにしています。
でも擬似的ですので処理速度に明らかに違いがあります。つまり遅い。
・よって32ビットOS(CPU)で64ビット整数が使えない場合は gcc がどう
処理するか調べてみて下さい。確認できない場合は最初から 64 ビット整数を
扱う仕組みをプログラマ側が用意しておきます。また、CPU の命令を調べ
64 ビット整数が扱える場合は long long 型で処理させるように分岐するとか。
・いろいろと工夫してみて下さい。
No.1
- 回答日時:
私だったら…
> long long型を使用したい
こう思った時点で、sizeof(long long) を出力するための
コードを書いて、結果がどうなるか「自分で」確認します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Ruby VBA 2 2023/01/14 14:14
- Excel(エクセル) 列の最終行に新たに入力されたらその値を自動参照 1 2023/01/21 09:59
- Visual Basic(VBA) VBA処理追加 こちらでご教示頂いたのですが回答完了させてしまいましたのでこちらからまた質問させてく 2 2022/10/27 09:57
- Visual Basic(VBA) 数式が消える 1 2023/03/19 16:55
- UNIX・Linux Linuxのパーティションタイプ(MBR/GPT)について 2 2022/07/26 13:35
- Visual Basic(VBA) VBAでfunctionを利用しようとしたときに「引数は省略できません」というエラーが出ます 1 2022/10/15 16:30
- 英語 "as long as"で仮定法は可能なのか、及び、直説法の両方可能な場合の見分け方について 4 2022/08/01 10:08
- Excel(エクセル) excel vba 参照渡しと値渡し 2 2022/04/27 10:45
- 英語 "long"→「腰がある」、「粘りがある」という意味が辞書に掲載されていないのはなんでですのん? 5 2023/06/27 17:14
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DLLファイルの逆コンパイラにつ...
-
ソフトの開発言語を調べる方法
-
C++でデスクトップGUIアプリ開...
-
変数の内容がコロコロ変わる、...
-
unsigned long long 型のフォー...
-
PICでのI2C通信でのマスタ、ス...
-
リリースモードとデバッグモー...
-
for文内での変数定義
-
main() 関数は、int を返値とす...
-
C言語での四角形描写
-
パーサとコンパイラの違いって?
-
C言語のプログラミングのソフト...
-
24bit サイズの変数
-
cudaのnvccはmingwやgccでも使...
-
SH2マイコンで
-
VB6のコンパイラ
-
python エラー
-
エクセルのエラーメッセージ「4...
-
<unistd.h>をVisualStudioでつ...
-
Eclipseのブレークポイントが○...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ソフトの開発言語を調べる方法
-
unsigned long long 型のフォー...
-
C++でデスクトップGUIアプリ開...
-
COBOLの論理演算子について質問...
-
組み込みソフト。ROM領域にデータ
-
printfなど、標準関数のソース...
-
cc と gcc の違い
-
リリースモードとデバッグモー...
-
パーサとコンパイラの違いって?
-
AIXとCOBOLについて
-
<conio.h>?
-
COBOLのALPHABET...
-
VC++の/Zm オプションについて
-
C++Builder → Visual C++ 移植...
-
C言語の規格
-
COBOLの論理演算子について
-
変数の内容がコロコロ変わる、...
-
Macで使えるC言語のコンパイラ...
-
PICでのI2C通信でのマスタ、ス...
-
最初に使う変数のゼロクリアに...
おすすめ情報