数値データ型
メニューを表示するにはスワイプしてください
整数値
整数データ型は、整数値に最も一般的に使用されるデータ型。int データ型は、-2,147,483,648 から 2,147,483,647 の範囲内の値を保持可能。
main.cpp
12345678910#include <iostream> int main() { int goodNumber = 12; int tooLarge = 2147483648; std::cout << "Printing goodNumber: " << goodNumber << std::endl; std::cout << "Printing tooLarge: " << tooLarge << std::endl; }
これは、int 変数を宣言すると、PCのメモリから正確に4バイトが割り当てられるために発生する。2147483647 より大きい数値(または -2147483648 より小さい数値)は、その4バイトに収まらない。他にも、用途に応じてより多く(または少なく)のメモリ領域を割り当てられるデータ型が用意されている。以下の表を参照。
longは大きな数値(例:世界の人口)を格納するために使用可能。shortは、数値が-32,768から32,767の範囲を超えないことが確実な場合(例:ユーザーの年齢の保存)に使用可能。shortを使用すると、より少ないメモリ領域で済む。
main.cpp
12345678910111213#include <iostream> int main() { short age = 22; // for small numbers int likes = 143200; // for larger numbers long population = 8200000000; // for very large numbers // Display the values std::cout << "Age: " << age << std::endl; std::cout << "Likes: " << likes << std::endl; std::cout << "World's population: " << population << std::endl; }
選択するデータ型には注意が必要です。型の範囲を超えた場合、C++コンパイラは通知を行わず、エラーの表示なしに予期しない値を受け取る可能性があります。
浮動小数点数
上記のデータ型は整数を格納するために設計されています。これらに 1.6 を代入しようとすると、次のような結果になります。
main.cpp
12345678#include <iostream> int main() { // Change the data type to `float` o `double` int num = 1.6; std::cout << num << std::endl; }
int型は数値の小数部分を切り捨てる動作。short型やlong型も同様の動作。浮動小数点(小数)を格納する場合は、float型またはdouble型を使用。
doubleを使って1.6を格納する例。
main.cpp
12345678910#include <iostream> int main() { float floatNum = 123.45678; double doubleNum = 123.45678; std::cout << "using float:" << floatNum - 123 << std::endl; std::cout << "using double:" << doubleNum - 123 << std::endl; }
float型は7桁の精度しか持たないため、数値123.456789はすでにその範囲を超えています。これにより不正確な結果が生じる可能性があります(下記の例を参照)。そのため、doubleの精度で十分であると確信できない限り、デフォルトでfloatを使用することを推奨します。
もちろん、小数部が0である場合は、floatやdoubleで整数値を格納することも可能です。しかし、変数が整数値のみを格納する場合(例:人口や「いいね」の数など)は、short/int/longを使用するのが良い習慣です。
フィードバックありがとうございます!
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください