int i=100, string s="100"在内存中如何存储 int 100占四个字节,每个字节分别存储了什么;string 100在的四个字节中又分别存储了什么;本人刚接触通讯方面的,发现本质的存储还不了解,希望各大神指点,给些内存、地址什么的方面资料看看内存通信存储 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 晕倒,你还是看看C语言吧,C语言或者汇编语言的最基础的入门教程都有这类资料,int的四个字节分别是00 00 00 64,但次序在不同平台上各有不同,有些是00 00 00 64,有些正好反过来64 00 00 00,这个和通讯是有关的,socket必须考虑字节次序问题, 字符串就更复杂了,一般来说string "100"在内存中占据6个字节,但在文件中可能是6个字节,也可能是3个字节,字符串会被视为字符的序列,字符串存储的是字符编码,所以存储内容是什么,要看使用什么样的字符编码,一般来说c#内存中使用unicode编码,在文件中通常用utf8编码其实也是unicode的一种形式, 我刚才试了下 100的十六进制存储的四位是 “64 00 00 00”;"100"十六进制存储的四位“03 31 30 30”;int十六进制存储的大概我知道了,字符串的第一位存储的是字符串长度值,第二位存储的是第一个字符,第三位存储的是第二个字符……,而字符串里的字符1为什么是31,0是30……,我记得Accii码的0表示是48……,这是什么表示结果? "100"十六进制存储的四位“03 31 30 30”;你用你的电脑上的科学计算机算一下 十六进制31 对应是十进制49 ASSII 49对应的是1 30对应的十进制是48 ASSII对应的是 0 http://wenku.baidu.com/view/5b9f32a9d1f34693daef3e71.html 这个是ASSIC表里面对应的字符我刚才那样写 就是因为你看的是十进制的ASSIC 所以想告诉你十六进制 31 对应十进制 49 对应的字符是 1 你看下我发的连接表 都可以找到的! 这个ASSIC 表比较全了自己去看就明白了,希望能帮到你! Zedgraph问题 在DataGridView里怎么获取当前点击的单元格的X和Y坐标? 类似QQ或MSN表情弹出框,并实现插入表情功能实现?(winform) 关于线程的超时处理的问题 Excel的QueryTable导出海量数据 求解:EXCEL中查询的数据变成数字 当派生类在使用父类中的属性时:使用this恰当还是base? c/s 下,如何把二进制文件下载到本地机? 问一下关于带滚动条控件的一个共有问题 几个问题 C# 面试题 求大神们解决一下 关于AJAX的一个小测试
这个是ASSIC表里面对应的字符我刚才那样写 就是因为你看的是十进制的ASSIC 所以想告诉你十六进制 31 对应十进制 49 对应的字符是 1 你看下我发的连接表 都可以找到的!