1. c语言中的 数的范围 字节数 要怎么算
printf("%d", sizeof(int)); 得到的就是字节数 范围就是 正负2的这个数乘以8减去1次方-1 比如说4 -(2^31-1)~~~2^31-1
2. C语言long是几个字节
C语言中long是4个字节,是一种数据类型,有两种表现形式:有符号和无符号。
在有符号中,long的表示数的范围为:-2147483648~2147483647
在无符号中,long的表示数的范围为::0~4294967295
(2)c语言数的字节数扩展阅读:
整型变量可分为以下几类:
基本型
类型说明符为int,根据计算机的内部字长和编译器的版本,在内存中可能占2或4个字节(通常分别在16位机和32位机上),其取值为基本整常数。
短整型
类型说明符为short int或short,在内存中占2个字节,其取值为短整常数。
长整型
类型说明符为long int或long,在内存中占4个字节,其取值为长整常数。
参考资料来源:
网络-long
网络=整型
3. c语言的字节数是什么意思
int占多少个字节是由编译器决定的,ANSI标准定义int是占2个字节.
TC是按ANSI标准的,它的int是占2个字节的.
你可以在TC里试.printf("%d",sizeof(int));结果是2;
但是在VC里,一个int是占4个字节的,在VC里面,
printf("%d",sizeof(int));
cout<<sizeof(int);结果都是4.
不同的编译器,规定也不一样.
float,double也是一样的,在不同的编译器里,占的字节是不一样的.
4. C语言中,字节数怎样算
\xff是转义0xff,这个内容是2字节。
如果作为字符串,还要有个0x0作结束符,实际需要占用的内存是3字节。
5. c语言类型所占字节数
类型
常见的有char、int、long、short、float、double及指针等.
字符类型
这里单只char,char变量在内存中存储的是字符对应的ASCII码值。所以长度也是固定的,为1个字节。
整数类型
查了资料发现对各个类型的整数占用字节数是有一个规定的,虽然16位32位或者64位的机子各种类型所占用的长度并不一样。规则如下:
short 至少占用2个字节。
int 建议为一个机器字长。32位环境下机器字长为4字节,64位环境下机器字长为8字节。
short 的长度不能大于 int,long 的长度不能小于 int。
所以说,short并不一定短,long并不一定短,有可能都和int一样长。
浮点数(小数)
C中浮点数有两种,float和double,不像整数,小数的长度始终是固定的,float占用4个字节,double占用8个字节。
指针
C中指针即为地址,所以编辑器的寻址空间则是指针的地址范围。所以指针变量在32位机器的寻址空间为2^32,要将所有地址都表示出来则需要为4个字节长度,所以要占用4个字节长度。同理64位的编译器则需要8个字节长度。
6. C语言中如何输出字节数
a)putchar函数:将指定的(表达式的值所对应的)字符输出到标准输出终端(屏幕)上。
格式:int putchar( int c );
例如:putchar(‘a’+3);打印的结果是d,是一个字符而不是数值。
a的ASCII码是97,加3是ASCII码表中100对应的字符就是d。
例如:putchar(99);打印的结果是c,代入一个数字打印出的是一个字符。
就如同代入的是学号,打印出来的是姓名一样。
b)putc函数:将指定的字符输出到指定标准输出流(屏幕或一个文件)中。
格式:int putc( int c, FILE *stream );
c)等价关系:putc的功能中包含putchar的功能。
putchar(c)等价于putc(c,stdout)。
例如:putc(‘A’,stdout)等价于putchar(‘A’)
(6)c语言数的字节数扩展阅读
C语言的字符对齐
1、数据类型自身的对齐值:对于char型数据,其自身对齐值为1,对于short型为2,对于int,float,double类型,其自身对齐值为4,单位字节。
2、复杂类型(如联合,结构体或者类)的自身对齐值:其成员中自身对齐值最大的那个值。
3、指定对齐值:#pragma pack (value)时的指定对齐值value。
4、数据成员、复杂类型(如联合,结构体或类)的有效对齐值:自身对齐值和指定对齐值中小的那个值。
7. C语言字符数占几个字节,又是多少位。
这个要看字符数是什么数据类型,可以用sizeof(类型)操作符来测试字节数。
1、英文字母:如果是char 型,那么是占用1个字节,8位。如果是string型,应该是两个字节,16位,因为末尾还有个\0字符。
比如:
char c = 'a';//它占用一个字符
char c[] = "a";//占用两个。
char c[] = "abcde";//占用4+1 = 5 个,结尾有一个'\0'
2、数字:有很多种类,从小到大分别为:
short、int、float、long、double
字节为:1个、2个、4个、8个、8个
位数为:8位、16位、32位、64位、64位
3、汉字:理论上说,一个汉字占用两个字节,16位。比如:中国,就占用4个字节,例如:
char c[] = "中国";//占用4+1 = 5个字符
8. C语言的int占几个字节,char占几个字节
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个字节
我用的书里,long写的是8个, 我认为应该是错误的,是 4个字节
#include<stdio.h>
intmain(void)
{
printf("char所占字节数%d ",sizeof(char));
printf("int所占字节数%d ",sizeof(int));
printf("short所占字节数%d ",sizeof(short));
printf("long所占字节数%d ",sizeof(long));
printf("float所占字节数%d ",sizeof(float));
printf("double所占字节数%d ",sizeof(double));
}
9. C语言结构体所占用的字节数如何计算
结构体的数据类型的有点多我们就不啰嗦了,直接来看相同数据结构体的几种书写的格式吧。
格式一:
01.structtagPhone
02.{
03.charA;
04.intB;
05.shortC;
06.}Phone;
格式二:
01.structtagPhone
02.{
03.charA;
04.shortC;
05.intB;
06.}Phone2;
格式三:
01.structtagPhone3
02.{
03.charA;
04.charB[2];
05.charC[4];
06.}Phone3;
我们都知道,char类型占用1个字节,int型占用4个字节,short类型占用2个字节,long占用8个,double占用16个;
那么我们可能会犯一个错误就是直接1+4+2=7,该结构体占用7个字节。这是错的。
以下我们简单分析下:
计算结构体大小时需要考虑其内存布局,结构体在内存中存放是按单元存放的,每个单元多大取决于结构体中最大基本类型的大小。
对格式一:
上面结构计算大小,sizeof(Phone3) = 1 + 2 + 4 = 7, 其大小为结构体中个字段大小之和,这也是最节省空间的一种写法。
总结:
第一种写法,空间浪费严重,sizeof 计算大小与预期不一致,但是保持了每个字段的数据类型。这也是最常见的漫不经心的写法,一般人很容易这样写;
第三种写法,最节省空间的写法,也是使用 sizeof 求大小与预期一样的写法,但是全部使用字节类型,丢失了字段本生的数据类型,不方便使用;
第二种写法,介于第一种和第三种写法之间,其空间上比较紧凑,同时又保持了结构体中字段的数据类型。
只要了解是这些写法的差异性,可以视情况选用。
10. C语言中一个英文字母.汉字.数字 分别都占几个字节啊
1、英文字母:如果是char 型,那么是占用1个字节,如果是string型,应该是两个。
char c = 'a';//它占用一个字符
char c[] = "a";//占用两个。
char c[] = "abcde";//占用4+1 = 5 个,结尾有一个'