サイトマップ / C言語講座>出入り口>総目次>目次:入出力(1)>変数の取りうる値の範囲
/* Cでは、変数を宣言する時、必ず、記憶クラスとデータ型と名前を指定します。変数のデータ型については、char 型とint 型については、既に、学びました。 */
/* 今日はデータ型について詳しく学びます。下に示すのは、Cで定義されているデータ型です。
データ型 | バイト数 | 取りうる値の範囲 |
char | 1 | 0 〜 255 |
short | 2 | -32768 〜 32767 |
int | 2 | -32768 〜 32767 |
unsigned short | 2 | 0 〜 65535 |
unsigned int | 2 | 0 〜 65535 |
long | 4 | -2147483648 〜 2147483647 |
unsigned long | 4 | 0 〜 4294967295 |
float | 4 | +10-37〜 +1038 |
double | 8 | +10-307〜 +10308 |
浮動小数点数を表すfloat型は計算する時double型に変換してから行われます。次いで計算結果をfloat型に戻します。このため、double型の計算より余分に時間がかかります。メモリが貴重だった過去の時代の遺物です。実際に使う可能性はありません。
今すぐ全てのデータ型を覚える必要はありませんが、学習が進むと上記のデータ型が出てきます。
今日のソースプログラムでは、幾つかのデータ型の局所変数を宣言し、それを初期化し、その値を printf( )で表示します。変数を宣言すると、その型に応じて必要なバイト数がメモリに確保されますが、その段階では、局所変数の値は幾つになっているかわかりません。過去に使ったメモリを再度割り付けられていたりします。そこで、局所変数がメモリに割り付けられた時、その中にゴミの値が入っているといいます。初期化というのは、値を代入するということです。 */
#include <stdio.h> void main(void); void main(void) { char c = 'a'; /* char 型の変数 c を宣言し 'a' に初期化 */ short i = -32768; /* 以下同様 */ int j = 32767; long k = 2147483647L; /* long 型整数には L を付ける */ double x = 1.2345; /* c, i, j, k, x の値を表示 */ printf("char c = %c;\nshort i = %d;\nint j = %d;\nlong k = %ld;\ndoble x = %lf;\n", c, i, j, k, x); } |
/* 今回のprintf( )は少し複雑です。'%'に続く文字を書式指定子といいます。'%'は次に書式指定子が来ることをコンパイラに教えます。取り敢えず下記に代表的な例を示しましたが、書式指定子については、いずれ、詳しく学びます。
C言語では、整数の値を表す型が沢山あります。扱うデータの取りうる範囲に応じて、使い分けます。 */
/* (C) 2000- YFプロ. All Rights Reserved. */ 提供:C言語講座−それ自体コンパイルできる教材を使った講座です−