🌻天国にいけるC++言語入門🌻 進化し続けるオブジェクト指向プログラミング ver3.2307
int型の変数aは -2147483648から2147483647までの数値データの1つを格納できますが、その範囲外の数値を代入してプログラムを実行すると正しい結果が表示されません
int型の変数aは -2147483648から2147483647までの数値データの1つを格納できますが、その範囲外の数値を代入してプログラムを実行すると正しい結果が表示されません
ソーラー「まだまだ つづくよ
#include <iostream>
using namespace std;
int main() {
int a;
a=5;
cout <<a<<"\n";
return 0;
}
ビルド実行結果
5
マックス
「int型の変数aは
-2147483648から2147483647までの数値データの1つを格納できるのか
じゃ
格納できる数値データの最大値の2147483647より大きい
1000000000000000を
変数aに代入したらどうなるんだ?」
ソーラー「そういえば そうですよね
#include <iostream>
using namespace std;
int main() {
int a;
a=5;
cout <<a<<"\n";
return 0;
}
このプログラムにおいて
a=5;
の部分を
a=1000000000000000;
と書き換えて
コンパイルしてみましょう。
#include <iostream>
using namespace std;
int main() {
int a;
a=1000000000000000;
cout <<a<<"\n";
return 0;
}
かきかきっと
書き換え終了
ソーラー
「では(^_^)/
ビルド実行っ」
ビルド実行結果
-1530494976
警告 C4309 '=': 定数値が切り捨てられました。c:\users\solarplexuss\source\repos\project7\project7\source.cpp
警告 C4305 '=': '__int64' から 'int' へ切り詰めます。c:\users\solarplexuss\source\repos\project7\project7\source.cpp
ソーラー「警告文とともに
なんだか1000000000000000とは
全然違う値
-1530494976
がビルド実行結果に表示されたね
この
警告文
C4309 '=': 定数値が切り捨てられました。
警告 C4305 '=': '__int64' から 'int' へ切り詰めます。
もなんだか
気になりますね。
とりあえず
int型の変数には
-2147483648から2147483647までの数値データ以外の数値を
格納すると
おかしなビルド実行結果が表示されることがわかりましたね」
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます