转载自:http://www.blogjava.net/tinysun/archive/2009/12/31/307952.html大端法、小端法、网络字节序 转关于字节序(大端法、小端法)的定义《UNXI网络编程》定义:术语“小端”和“大端”表示多字节值的哪一端(小端或大端)存储在该值的起始地址。...
分类:
其他好文 时间:
2014-06-28 15:48:00
阅读次数:
145
1 字符编码1.1编码的历史1.1.1ASCII码0=127 7位表示1.1.2ASCII扩展码0—255 8为表示。代码页:通过代码也来切换对应的字符(数字表示)1.1.3双字节字符集DBCS使用一个或两个字节表示字符。1.1.4Unicode编码全部使用2个字节表示字符内存 硬盘等资源占用变大。对编码支持度大。字符集1.2C 语言和编码1.2.1单字节的字符和字符串Char cText ...
为了程序编写方便,根除乱码问题等等需求,很多新项目都采用了Unicode编码。同时,不少使用MBCS多字节编码的旧项目为了升级,也有了转向Unicode编码的意向。不过,从MBCS升级到Unicode并不是无缝的,该问题的复杂程度,取决于代码总量和代码的编写质量。本文是作者在一个C/C++项目中的一...
分类:
其他好文 时间:
2014-06-18 14:16:01
阅读次数:
147
实际就是由宽字节转换为多字节的过程
-------------
首先MultiByteToWideChar(CP_UTF8, 0, (LPCSTR)szOut, -1, (LPWSTR)wszGBK, len) 转换UTF-8 到表中UNICODE
然后
WideCharToMultiByte(CP_ACP, 0, (LPWSTR)wszGBK, -1, szGBK, len, NULL,...
分类:
其他好文 时间:
2014-06-13 21:23:33
阅读次数:
318
引言:在进行网络通信时是否需要进行字节序转换?相同字节序的平台在进行网络通信时可以不进行字节序转换,但是跨平台进行网络数据通信时必须进行字节序转换。原因如下:网络协议规定接收到得第一个字节是高字节,存放到低地址,所以发送时会首先去低地址取数据的高字节。小端模式的多字节数据在存放时,低地址存放的是低字...
分类:
其他好文 时间:
2014-06-10 11:48:25
阅读次数:
248
当一个较少字节对齐类型的指针强转为一个较多字节对齐的指针类型时,这样有些时候会产生问题。
在arm的平台上,这个问题比较明显,在x86平台上运行后没这个问题typdef struct{int addr;int rdda;}Test_t;int
main(){short int a;short ...
分类:
其他好文 时间:
2014-06-07 03:40:59
阅读次数:
301
1,字符串属性 查看系统拥有那些字符集:
若需要来自多种语言存放到同一列中,会考虑Unicode字符集(utf8或ucs2),只有它能表示多语言的字符
有些字符集支持多字节,有些只包含单字节,判断是否支持多字节的方法是对比Length()h和char_length函数的返回值来判定字符串中是否有多字...
分类:
数据库 时间:
2014-06-04 17:48:00
阅读次数:
456
GBK的文字编码是双字节来表示的,即不论中、英文字符均使用双字节来表示,只不过为区分中文,将其最高位都定成1。UTF-8编码则是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24位(三个字节)来编码。对于英文字符较多的论坛则用UTF-8节省空间。以上或许你看不懂,简单的...
分类:
其他好文 时间:
2014-06-02 21:54:33
阅读次数:
309
/** * 将字符串拆分为指定最大宽度的字符串数组。单字节字符宽度为1,多字节字符通常宽度为2 *
@param string $msg 要拆分的字符串 * @param int $width 结果数组中每个元素的最大宽度。如10代表10个英文字母或者5个汉字
...
分类:
Web程序 时间:
2014-05-30 04:14:47
阅读次数:
281
??
enum EM_DEMO
{
EM_INDEX1 = 1,
EM_INDEX2 = 2,
EM_INDEX3 = 3,
EM_INDEX4 = 4
}
//多字节
#define _TXT__(x) #x
#define EMTOSTR(EM) _TXT__(EM)
//多字节或 unicode
#define _TXT__(x)...
分类:
编程语言 时间:
2014-05-26 05:33:39
阅读次数:
849