lstd.net
当前位置:首页 >> C语言字符型占几个字节 >>

C语言字符型占几个字节

这个要看字符数是什么数据类型,可以用sizeof(类型)操作符来测试字节数.1、英文字母:如果是char 型,那么是占用1个字节,8位.如果是string型,应该是两个字节,16位,因为末尾还有个\0字符.比如:char c = 'a';//它占用一个字符

字符串"X"占用两个字节,一个是字符'X',一个是字符'\0'

char字符占一个字节8bit

在内存中:1、整形占2个字节. 2、单精度数字符占4个字节. 3、双精底数字符占8个字节. 4、字符型占1个字节.(注:1MB等于1024KB,1KB等于1024字节)

strlen可以得到准备数目.字符串长度,看编码方式的 ASCII、UTF-8、UNICODEASCII是,VC环境默认英文字符 1B (1个字节,8位)中文字符 2BVC可以设置编码方式,改成UNICODE也可以,UNICODE所有字符都是2B(2个字节,16位).

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

C语言字符一般占用一个字节,但是是对于中文字符一般占用两个字节.一般来说,系统会根据情况来决定你存储的字符到底占用几个存储单元.然后对地址进行编码计算的.

用strlen(char)试下 就知道了是两个字节的 以前老版本的编译器 估计是 一个字节的 这里是一个字符占的字节数 不是你所说的128个 你这样定义 char ch;//这个不可能达到你所说的 char ch[128]//这个可以多少个呢?

字符主要是考虑ASCII码中字符,ASCII码有8位,最高位不用,最多有128个,而且有一些不可见的字符,所以一个字节足够.至于整型以及不同精度类型的数据,考虑到在编程中使用的数据的范围,根据数据可能的范围选择不同的类型能有效提高程序的效率.处理器处理双精度数据是很费时的

效率上来说应该用整型,如果需要进行网络传输,其实也不需要为一两个字节而纠结,或者你做的AMT32 方面的开发,考虑到字节越少越好,并且网络转换的都是char型.现在的计算机已资源已经不像以前那么少了,所以用char比较方便

网站首页 | 网站地图
All rights reserved Powered by www.lstd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com