精华内容
下载资源
问答
  • cout << "signed char: \t" 所占字节数:" (signed char); cout 最大值:" (numeric_limits<signed char>::max)(); cout 最小值:" (numeric_limits<signed char>::min)() ; cout << "unsigned char: \t" ...

    (虽然标着未经允许不能转载,但实在是太好了,并且有很多用法没有见过,就只转了代码)


    #include<iostream>  
    #include<string>  
    #include<limits>  
    using namespace std;  
      
    int main()  
    {  
        cout << "type: \t\t" << "************size**************"<< endl;  
        cout << "bool: \t\t" << "所占字节数:" << sizeof(bool);  
        cout << "\t最大值:" << (numeric_limits<bool>::max)();  
        cout << "\t\t最小值:" << (numeric_limits<bool>::min)() << endl;  
        cout << "char: \t\t" << "所占字节数:" << sizeof(char);  
        cout << "\t最大值:" << (numeric_limits<char>::max)();  
        cout << "\t\t最小值:" << (numeric_limits<char>::min)() << endl;  
        cout << "signed char: \t" << "所占字节数:" << sizeof(signed char);  
        cout << "\t最大值:" << (numeric_limits<signed char>::max)();  
        cout << "\t\t最小值:" << (numeric_limits<signed char>::min)() << endl;  
        cout << "unsigned char: \t" << "所占字节数:" << sizeof(unsigned char);  
        cout << "\t最大值:" << (numeric_limits<unsigned char>::max)();  
        cout << "\t\t最小值:" << (numeric_limits<unsigned char>::min)() << endl;  
        cout << "wchar_t: \t" << "所占字节数:" << sizeof(wchar_t);  
        cout << "\t最大值:" << (numeric_limits<wchar_t>::max)();  
        cout << "\t\t最小值:" << (numeric_limits<wchar_t>::min)() << endl;  
        cout << "short: \t\t" << "所占字节数:" << sizeof(short);  
        cout << "\t最大值:" << (numeric_limits<short>::max)();  
        cout << "\t\t最小值:" << (numeric_limits<short>::min)() << endl;  
        cout << "int: \t\t" << "所占字节数:" << sizeof(int);  
        cout << "\t最大值:" << (numeric_limits<int>::max)();  
        cout << "\t最小值:" << (numeric_limits<int>::min)() << endl;  
        cout << "unsigned: \t" << "所占字节数:" << sizeof(unsigned);  
        cout << "\t最大值:" << (numeric_limits<unsigned>::max)();  
        cout << "\t最小值:" << (numeric_limits<unsigned>::min)() << endl;  
        cout << "long: \t\t" << "所占字节数:" << sizeof(long);  
        cout << "\t最大值:" << (numeric_limits<long>::max)();  
        cout << "\t最小值:" << (numeric_limits<long>::min)() << endl;  
        cout << "unsigned long: \t" << "所占字节数:" << sizeof(unsigned long);  
        cout << "\t最大值:" << (numeric_limits<unsigned long>::max)();  
        cout << "\t最小值:" << (numeric_limits<unsigned long>::min)() << endl;  
        cout << "double: \t" << "所占字节数:" << sizeof(double);  
        cout << "\t最大值:" << (numeric_limits<double>::max)();  
        cout << "\t最小值:" << (numeric_limits<double>::min)() << endl;  
        cout << "long double: \t" << "所占字节数:" << sizeof(long double);  
        cout << "\t最大值:" << (numeric_limits<long double>::max)();  
        cout << "\t最小值:" << (numeric_limits<long double>::min)() << endl;  
        cout << "float: \t\t" << "所占字节数:" << sizeof(float);  
        cout << "\t最大值:" << (numeric_limits<float>::max)();  
        cout << "\t最小值:" << (numeric_limits<float>::min)() << endl;  
        cout << "size_t: \t" << "所占字节数:" << sizeof(size_t);  
        cout << "\t最大值:" << (numeric_limits<size_t>::max)();  
        cout << "\t最小值:" << (numeric_limits<size_t>::min)() << endl;  
        cout << "string: \t" << "所占字节数:" << sizeof(string) << endl;  
        // << "\t最大值:" << (numeric_limits<string>::max)() << "\t最小值:" << (numeric_limits<string>::min)() << endl;  
        cout << "type: \t\t" << "************size**************"<< endl;  
        return 0;  
    }  



    然后输出就是这个~(把这个拖到新开的页面上就能看清了~)



    展开全文
  • 在32位机器64机器中int类型都占用4个字节。编译器可以根据自身硬件来选择合适的大小,但是需要...下面列举在GCC编译器下32位机器64位机器各个类型变量所占字节数: C类型 32位机器(字节) 64位机器(字节) c

    在32位机器和64机器中int类型都占用4个字节。编译器可以根据自身硬件来选择合适的大小,但是需要满足约束:short和int型至少为16位,long型至少为32位,并且short型长度不能超过int型,而int型不能超过long型。
    这即是说各个类型的变量长度是由编译器来决定的,而当前主流的编译器中一般是32位机器和64位机器中int型都是4个字节(例如,GCC)。
    下面列举在GCC编译器下32位机器和64位机器各个类型变量所占字节数:

    C类型 32位机器(字节) 64位机器(字节)
    char 1 1
    short 2 2
    int 4 4
    long int 4 8
    long long 8 8
    char * 4 8
    float 4 4
    double 8 8

    总体而言,最大的不同点就是在long型和指针类型长度不一样,对于指针而言,64位机器可以寻址2^64,每个内存地址长度为64位,即8字节。

    展开全文
  • 在 C 语言中 double, long, unsigned, int, char 类型数据所占字节机器字长及编译器有关系, 所以, int, long int, short int 的宽度都可能随编译器而异. 但有几条铁定的原则 (ANSI/ISO 制定的): 1. sizeof...

        在 C 语言中 double, long, unsigned, int, char 类型数据所占字节数和机器字长及编译器有关系, 所以, int, long int, short int 的宽度都可能随编译器而异.

        但有几条铁定的原则 (ANSI/ISO 制定的): 

        1. sizeof(shot int) <= sizeof(int)

        2. sizeof(int) <= sizeof(long int)

        3. short int 至少为 16 位 (2字节)

        4. long int 至少应为 32 位

        unsigned 是无符号的意思.

    例如:

    16 位编译器

    char: 1 字节    char*(即指针变量): 2 字节    short int: 2 字节    int: 2 字节    unsigned int: 2 字节    float: 4 字节    double: 8 字节    

    long: 4 字节    long long: 8 字节    unsigned long: 4 字节

    32 位编译器

    char: 1 字节    char*(即指针变量): 4 字节(32 位的寻址空间是 2^32, 即 32 个 bit, 也就是 4 字节. 同理 64 位编译器)    

    short int: 2 字节    int: 4 字节    unsigned int: 4 字节    float: 4 字节    double: 8 字节    

    long: 4 字节    long long: 8 字节    unsigned long: 4 字节

    64 位编译器

    char: 1 字节    char*(即指针变量): 8 字节    short int: 2 字节    int: 4 字节    unsigned int: 4 字节    float: 4 字节    double: 8 字节    

    long: 4 字节    long long: 8 字节    unsigned long: 8 字节

    展开全文
  • 在C语言中,double、long、unsigned、intchar类型数据所占字节机器字长及编译器有关系: 表格形式,易于开发者浏览
    在C语言中,double  long  unsigned  int  char  类型数据所占字节数和机器字长及编译器有关系:所以,int,long int,short int的宽度都可能随编译器而异。但有下面几条原则(ANSI/ISO制订的): 
    1 sizeof(short int)<=sizeof(int) 
    2 sizeof(int)<=sizeof(long int) 
    3 short int至少应为16位(2字节) 
    4 long int至少应为32位。 
    unsigned 是无符号的意思。
    具体如下表格
    所占空间字节数
      16位编译器
    32位编译器
    64位编译器
    char 1byte 1byte 1byte
    char *(指针变量) 2byte 4byte 8byte
    short int
    2byte 2byte 2byte
    int
    2byte 4byte 4byte
    unsigned int
    2byte 4byte 4byte
    float 4byte 4byte 4byte
    double
    8byte 8byte 8byte
    long
    4byte 4byte 8byte
    long long
    8byte 8byte 8byte
    unsigned long 4byte 4byte 8byte

    展开全文
  • 在C语言中,double、long、unsigned、intchar类型数据所占字节机器字长及编译器有关系: 所以,int,long int,short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的): sizeof(short...
  • 机器字长及编译器有关系 所以intlong intshort int的宽度都可能随编译器而异但有几条铁定的原则ANSI/ISO制订的 1 sizeof(short int(int) 2 sizeof(int(long int) 3 short int至少应为16位2字节 4 long int至少应为...
  • 机器字长及编译器有关系:所以,int,long int,short int的宽度都可能随编译器...char :1个字节char*(即指针变量): 2个字节short int : 2个字节int: 2个字节unsigned int : 2个字节float: 4个字节double: 8个字节l
  • 在C/C++语言中,double、long、unsigned、intchar类型数据所占字节机器字长及编译器有关系: 所以,int,long int,short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的): 1.sizeof...
  • java 数据类型所占字节数,int char

    千次阅读 2016-06-11 09:36:13
    数据类型所占字节数,代码如下: package SimpleGrammar; /** * * @author jaloli * byte和int,char类型区别如下: 1.byte 是字节数据类型 ,是有符号型的,占1 个字节;大小范围为-128—127 。 2.char 是字符...
  • c中char int float double long所占字节

    千次阅读 2017-10-13 17:57:38
    所占字节机器字长及编译器有关系: 所以,int,long int,short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的): 1 sizeof(short int)(int) 2 sizeof(int)(long int) 3 short int至少...
  • 在C语言中,double、long、unsigned、intchar 类型数据所占字节机器字长及编译器有关系: 所以,int,long int,short int 的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的): 1 sizeof...
  • 机器字长及编译器有关系: 所以,int,long int,short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的): ...3 short int至少应为16位(2字节) 4 long int至少应为32位。 unsigned 是
  • 机器字长及编译器有关系:  所以,int,long int,short int的宽度都可能随编译器而异。 但有几条铁定的原则(ANSI/ISO制订的): 1 sizeof(short int)&lt;=sizeof(int) 2 sizeof(int)&lt;=sizeof...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 538
精华内容 215
关键字:

int和char所占字节