C语言中,double、long、unsigned、int、char类型数据所占字节数

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位编译器 
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:   8个字节 
long long:  8个字节 
unsigned long:  8个字节 

C语言中,double、long、unsigned、int、char类型数据所占字节数

时间: 2024-11-03 22:14:13

C语言中,double、long、unsigned、int、char类型数据所占字节数的相关文章

在C语言中,double long unsigned int char 类型数据所占字节数

在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 是无符号的意思.

在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位编译器 char :1个字节 char*(即指针变量): 2个字节 short

【转载】在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位编译器 char :1个字节 char*(即指针变量): 2个字节 short

转:C语言中的static变量和C++静态数据成员(static member)

转自:C语言中的static变量和C++静态数据成员(static member) C语言中static的变量:1).static局部变量        a.静态局部变量在函数内定义,生存期为整个程序运行期间,但作用域与自动变量相同,只能在定义该变量的函数内使用.退出该函数后, 尽管该变量还继续存在,但不能使用它.        b.对基本类型的静态局部变量若在说明时未赋以初值,则系统自动赋予0值.而对自动变量不赋初值,则其值是不定的.2).static全局变量        全局变量本身就是静

C,C++,JAVA char,各占字节数

char在C和C+中占一个字节 Java中无论是汉字还是英文字母都是用Unicode编码来表示的,一个Unicode码是16位,每字节是8位,所以一个Unicode码占两字节 /** * The number of bits used to represent a <tt>char</tt> value in unsigned * binary form. * * @since 1.5 */ public static final int SIZE = 16;

binary、char类型数据互转函数

最近在做项目时,需要把binary类型数据转换成字符类型的数据,发现原来可以这样写,记录下来供需要的童靴参考. IF OBJECT_ID('fn_BinaryToChar') IS NOT NULL DROP FUNCTION fn_BinaryToCharGO /* =============================================-- 作者: Haytor-- 日期: 2015-09-09-- 描述: 把16进制数据转换成字符串数据-- 示例: DECLARE @va

Linux基本数据类型大小——int,char,long int,long long int

转自:http://paddy-w.iteye.com/blog/1403217 在Linux操作系统下使用GCC进行编程,目前一般的处理器为32位字宽,下面是/usr/include/limit.h文件对Linux下数据类型的限制及存储字节大小的说明.  /* We don't have #include_next.   Define ANSI <limits.h> for standard 32-bit words.  */     /* These assume 8-bit 'char'

转]解析C语言中的sizeof

解析C语言中的sizeof 一.sizeof的概念 sizeof是C语言的一种单目操作符,如C语言的其他操作符++.--等.它并不是函数.sizeof操作符以字节形式给出 了其操作数的存储大小.操作数可以是一个表达式或括在括号内的类型名.操作数的存储大小由操作数的类型决定. 二.sizeof的使用方法 1.用于数据类型 sizeof使用形式:sizeof(type) 数据类型必须用括号括住.如sizeof(int). 2.用于变量 sizeof使用形式:sizeof(var_name)或size

(C语言)char类型与int类型相加

1 #include <stdio.h> 2 3 int main(void) { 4 char a = 127; 5 int b = 4; 6 int c = a + b; 7 a += b; 8 printf("c=%d",c); 9 //printf("c=%s",c); 10 printf("a=%d",a); 11 //printf("a=%c",a); 12 //printf("a=%s&qu