TOP - C言語 - 変数

変数の型には以下の種類があります。 ※実装環境によってはサイズなどが異なる可能性があります。
文字型
    char               → 文字コードに対応する数値を格納

整数型
    signed char        → 文字型と同じメモリサイズの整数(符号付き)
    unsigned char      → 文字型と同じメモリサイズの整数(符号無し)

    short int          → 2バイト整数(符号付き)
    unsigned short int → 2バイト整数(符号無し)

    int                → 4バイト整数(符号付き)
    unsigned int       → 4バイト整数(符号無し)

    long int           → 8バイト整数(符号付き)
    unsigned long int  → 8バイト整数(符号無し)

浮動小数型
    float              → 浮動小数点数(単精度)
    double             → 浮動小数点数(倍精度)

(例)
#include <stdio.h>
#include <float.h>
#include <limits.h>

int main ()
{
    char c = '0';
    char c_max = CHAR_MAX;
    char c_min = CHAR_MIN;
    signed char sc_max = SCHAR_MAX;
    signed char sc_min = SCHAR_MIN;
    unsigned char uc_max = UCHAR_MAX;
    unsigned char uc_min = 0;

    short int si_max = SHRT_MAX;
    short int si_min = SHRT_MIN;
    unsigned short int usi_max = USHRT_MAX;
    unsigned short int usi_min = 0;
    short si = SHRT_MIN;

    int i_max = INT_MAX;
    int i_min = INT_MIN;
    unsigned int ui_max = UINT_MAX;
    unsigned int ui_min = 0;
    unsigned ui = UINT_MAX;

    long int li_max = LONG_MAX;
    long int li_min = LONG_MIN;
    unsigned long uli_max = ULONG_MAX;
    
    float f_max = FLT_MAX;
    float f_min = FLT_MIN;
    double d_max = DBL_MAX;
    double d_min = DBL_MIN;

    printf("char 文字コード : %d\n", c);
    printf("char 最大値  : %d\n", (int)c_max);
    printf("char 最小値  : %d\n", (int)c_min);
    printf("signed char 最大値  : %d\n", (int)sc_max);
    printf("signed char 最小値  : %d\n", (int)sc_min);
    printf("unsigned char 最大値  : %d\n", (int)uc_max);
    printf("unsigned char 最小値  : %d\n", (int)uc_min);

    printf("short int 最大値  : %d\n", si_max);
    printf("short int 最小値  : %d\n", si_min);
    printf("unsigned short int 最大値  : %d\n", usi_max);
    printf("unsigned short int 最小値  : %d\n", usi_min);
    printf("[int]は省略可能  : %d\n", si);
    
    printf("int 最大値  : %d\n", i_max);
    printf("int 最小値  : %d\n", i_min);
    printf("unsigned int 最大値  : %ld\n", (long)ui_max);
    printf("unsigned int 最小値  : %ld\n", (long)ui_min);
    printf("[int]は省略可能  : %ld\n", (long)ui);
    
    printf("long int 最大値  : %ld\n", li_max);
    printf("long int 最小値  : %ld\n", li_min);
    printf("unsigned long int 最大値  : %20.1f\n", (double)uli_max);

    printf("float 最大値  : %e\n", f_max);
    printf("float 最小値  : %e\n", f_min);
    printf("double 最大値  : %e\n", d_max);
    printf("double 最小値  : %e\n", d_min);
    
    return 0;
}

実行結果 ※実行環境 : Mac OS X 10.6 - [GCC 4.2]
char 文字コード : 48
char 最大値  : 127
char 最小値  : -128
signed char 最大値  : 127
signed char 最小値  : -128
unsigned char 最大値  : 255
unsigned char 最小値  : 0
short int 最大値  : 32767
short int 最小値  : -32768
unsigned short int 最大値  : 65535
unsigned short int 最小値  : 0
[int]は省略可能  : -32768
int 最大値  : 2147483647
int 最小値  : -2147483648
unsigned int 最大値  : 4294967295
unsigned int 最小値  : 0
[int]は省略可能  : 4294967295
long int 最大値  : 9223372036854775807
long int 最小値  : -9223372036854775808
unsigned long int 最大値  : 18446744073709551616.0
float 最大値  : 3.402823e+38
float 最小値  : 1.175494e-38
double 最大値  : 1.797693e+308
double 最小値  : 2.225074e-308


Copyright(C) 2006-2012 CLAYPOT. All Rights Reserved.