还是从实际运用中体会更加深刻,再 Yar 中定义了_yar_header结构体typedef struct _yar_header {

unsigned int   id;

unsigned short version;

unsigned int   magic_num;

unsigned int   reserved;

unsigned char  provider[32];

unsigned char  token[32];

unsigned int   body_len;

}

这里char占的1字节,但是在 java 里面char占2个字节。

char在Java中是16位的,因为Java用的是Unicode。不过8位的ASCII码包含在Unicode中,是从0~127的。

Java中使用Unicode的原因是,Java的Applet允许全世界范围内运行,那它就需要一种可以表述人类所有语言的字符编码。Unicode。但是English,Spanish,German, French根本不需要这么表示,所以它们其实采用ASCII码会更高效。这中间就存在一个权衡问题。

因为char是16位的,采取的Unicode的编码方式,所以char就有以下的初始化方式:char c= 'c'; //字符,可以是汉字,因为是Unicode编码

char c= 十进制数,八进制数,十六进制数等等; //可以用整数赋值

char c= '\u数字'; //用字符的编码值来初始化,如:char='\0',表示结束符,它的ascll码是0,这句话的意思和 char c=0 是一个意思。

鸟哥在设计_yar_header中的provider和token的时候实际意义就是说 ASCII 码在0~127之间的,也就是我们常用的用户名密码一样,英文加各种字符。具体可以查看 ASCII 码表。那么我在 Java 中表示的时候,如果用char[16]则密码强度跟不上,为了保持密码强度,这里我用 String 来代替。public class YarHeader {

private int id;

private short version;

private int magicNum;

private int reserved;

private String provider;

private String token;

private int bodyLen;

//...

}

c java char_Java 和 C 里面 char 的区别相关推荐

  1. java char的包装对象,Java 从Character和char的区别来学习自动拆箱装箱

    本文结构 1.Character和char 的区别: 2.自动拆箱装箱java 1.Character和char 的区别: Character是类,char基本数据类型.数组 在java中有三个类负责 ...

  2. java中String,int,Integer,char、double类型转换

    java中String,int,Integer,char.double类型转换----https://www.cnblogs.com/kangyu222/p/5866025.html 转载于:http ...

  3. 【Java】- Incompatible types. Found: java. lang. String', required:' byte, char, short or int'

    IDEA项目编译报错:Incompatible types. Found: java. lang. String', required:' byte, char, short or int',swit ...

  4. java Char与char_JAVAc++中char和char[]的区别

    JAVAc++中char和char[]的区别 (2011-05-17 09:25:45) 标签: 杂谈 地方. 但是留意p1.p2自身是在栈中的. 2. 2申请后系统的响应 栈:只要栈的剩余空间大于所 ...

  5. JAVA关于int强转char,打印出乱码的原因

    JAVA:关于int强转char,打印出乱码的原因 先看一段代码 public class Test {public static void main(String[] args) {String s ...

  6. Java中long和Long有什么区别

    Java中long和Long有什么区别(转) Java的数据类型分两种: 1.基本类型:long,int,byte,float,double,char 2. 对象类型(类): Long,Integer ...

  7. java == hashcode,java中==和equals和hashCode的区别

    java中==和equals和hashCode的区别 == 的作用: 基本类型:比较的就是值是否相同 引用类型:比较的就是地址值是否相同(确切的说,是堆内存地址) equals 的作用: 引用类型:默 ...

  8. byte,int,char的区别

    什么是byte byte,即字节,由8位的二进制组成.在Java中,byte类型的数据是8位带符号的二进制数. 在计算机中,8位带符号二进制数的取值范围是[-128, 127],所以在Java中,by ...

  9. Java代码点和代码单元及其区别

    转载自:http://blog.csdn.net/weizhaozhe/article/details/3909079 转载自:http://blog.csdn.net/morningsun1990/ ...

最新文章

  1. CentOS6.3配置yum源
  2. hibernate ORM related
  3. Luogu2114 [NOI2014]起床困难综合症 【位运算】
  4. 8种图数据库对 NULL 属性值支持情况
  5. 数据挖掘技术之关联分析
  6. 2.泡妞与设计模式(三) 外观模式
  7. golang-go mod版本等相关内容:
  8. 偏向锁、轻量级锁、重量级锁、锁升级、锁对比
  9. 通过Snap7与 LOGO!8PLC通信
  10. 防止撤回插件 Android,微信防撤回插件
  11. 通信工程cdma篇-网优网规基础
  12. 计算机网络(谢希仁第7版)课后答案—— 第七章网络安全
  13. 效果最接近《羊了个羊》(卡牌堆叠游戏)的开源代码 微信小程序开源了
  14. Android,SharedPreferences的使用
  15. 【粒子动画】iOS流星雨效果如何实现
  16. Arduino与Proteus仿真实例-继电器驱动仿真
  17. 基于Python/Capl脚本 对通信矩阵报文(Flexray/Can)的周期检测(二)
  18. java中got是什么意思_Java基本概念的了解
  19. 天将降大任于斯人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为,所以动心忍性,增益其所不能
  20. 教育游戏的动机、成效及若干问题之探讨

热门文章

  1. mysql整型无符号 大小_解决mysql无符号整型自减运算时溢出的问题
  2. 程序人生: 我的十年,自己的生活经历,个人自传 (整理)
  3. 正大国际:为什么资深交易者更倾向于裸K?
  4. 网易面试Java开发凉凉经,面试官:基础不牢,技术不够深入,无缘offer,无缘网易......
  5. 嵌入式Linux(一):东山派壹号 ubuntu开发环境配置
  6. 教程篇(7.2) 02. 防火墙策略 FortiGate安全 ❀ Fortinet网络安全专家 NSE4
  7. JAVA安卓开发调用相机
  8. 【阿冈观点】超女和搏客,分析和攻击都是两码事!
  9. Xmind ZEN如何导出透明背景思维导图
  10. 杭州计算机类公务员考啥,浙江公务员招考已有14万人,报计算机类职位最俏