c语言相关

来源:互联网 发布:网络种子什么意思啊 编辑:程序博客网 时间:2024/05/17 01:05

const修饰指针的说明:

const int *A; //const修饰指向的对象,A可变,A指向的对象不可变
int const *A; //const修饰指向的对象,A可变,A指向的对象不可变
int *const A; //const修饰指针A, A不可变,A指向的对象可变
const int *const A;//指针A和A指向的对象都不可变

 

32位系统下,int、long、long long、__int64所占字节数和取值范围
字节数
char: 1字节(8位)
int: 4字节 (32位,取值范围 -2^31 ~ 2^31-1)
unsigned int : 4字节 (32位,取值范围 0 ~ 2^32-1)
long: 4字节 (32位,取值范围 -2^31 ~ 2^31-1)
unsigned long : 4字节 (32位,取值范围 0 ~ 2^32-1)
long long : 8字节(64位,取值范围 -2^63 ~ 2^63-1)
取值范围
int   :   -2147483648 ~ 2147483647 
unsigned  int  :    0 ~ 4294967295   
long   :  -2147483648 ~ 2147483647
unsigned long  :  0 ~ 4294967295
long long   :  -9223372036854775808 ~ 9223372036854775807
unsigned long long  :  0 ~ 1844674407370955161

__int64  :  -9223372036854775808 ~ 9223372036854775807
unsigned __int64  :  0 ~ 1844674407370955161

 

关于字节对齐:

1.数据类型自身的对齐值:
      对于char型数据,其自身对齐值为1,对于short型为2,对于int,float,double类型,其自身对齐值为4,单位字节。
2.结构体或者类的自身对齐值:其成员中自身对齐值最大的那个值。
3.指定对齐值:#pragma pack (value)时的指定对齐值value。
4.数据成员、结构体和类的有效对齐值:自身对齐值和指定对齐值中小的那个值。

 

0 0
原创粉丝点击