1、sizeof返回的必定是无符号整形,在标准c中通过 typedef 将返回值类型定义为size_t. 若用printf输出size_t类型时,C99中定义格式符%zd;若编译器不支持可以尝试%u或%lu. sizeof,获取操作数占用的内存空间字节数,返回类型size_t; strlen,获取字 ...
分类:
其他好文 时间:
2016-12-12 02:01:23
阅读次数:
211
#include<Windows.h>//注释:多字节包括GBK和UTF-8intGBK2UTF8(char*szGbk,char*szUtf8,intLen){//先将多字节GBK(CP_ACP或ANSI)转换成宽字符UTF-16//得到转换后,所需要的内存字符数intn=MultiByteToWideChar(CP_ACP,0,szGbk,-1,NULL,0);//字符数乘以sizeof(WCHAR)得到..
分类:
其他好文 时间:
2016-12-09 01:46:11
阅读次数:
617
sql注入中的宽字节国内最常使用的gbk编码,这种方式主要是绕过addslashes等对特殊字符进行转移的绕过。反斜杠的十六进制为%5c,在你输入%bf%27时,函数遇到单引号自动转移加入\,此时变为%bf%5c%27,%bf%5c在gbk中变为一个宽字符“縗”。%bf那个位置可以是%81-%fe中间的任何字?.
分类:
其他好文 时间:
2016-12-08 00:02:49
阅读次数:
196
1.WindowsAPI开发入门2.Windows数据类型3.Windows数据类型与WindowsAPI函数4.Windows数据结构5.将系统目录信息写入文件6.窗口创建以及消息处理7.使用对话框资源创建窗口8.使用MFC创建对话框窗口9.宽字符10.三种版本11.字符转换12.遍历卷13.驱动 ...
宽字节注入原理: %DF’ :会被PHP当中的addslashes函数转义为“%DF\'” ,“\”既URL里的“%5C”,那么也就是说,“%DF'”会被转成“%DF%5C%27”倘若网站的字符集是GBK,MYSQL使用的编码也是GBK的话,就会认为“%DF%5C%27”是一个宽字符。也就是“縗’” ...
分类:
其他好文 时间:
2016-11-15 01:15:59
阅读次数:
354
今天再看树的结构时,想起文件文件的储存就是一个典型的树结构,因此基于MFC提供的函数,写了一个关于文件查找的代码。 因为需要用到MFC的类,所以在建立控制台项目时,需要关联MFC; 该代码删除了由于关联MFC而生成的一些其他代码,保留_tmain()函数即可; 采用宽字符,因此使用了wcout输出 ...
电脑发展的初期,只是在美国等英文国家使用,英文只有26个字母和其它字符,一个字节最多可以表示256个字符,如字母“A”用0x41(二进制01000001)表示,字母“a”用0x61(二进制01100001)表示。为了使各家电脑公司生产的电脑统一,美国搞了个国家标准ANSI,一直沿用至今,我们今天用的 ...
分类:
其他好文 时间:
2016-10-04 18:44:03
阅读次数:
163
QT是一个跨平台的框架 它封装了一个QString类来代表字符串,它是一个Unicode16编码的类 (每个字符占两个字节) 同时封装了一个QChar类代表宽字符 默认乱码: QString //乱码演示 /*QString str = "你好!世界"; //cpp是GBK编码,不能直接给QStri ...
分类:
其他好文 时间:
2016-09-23 19:59:57
阅读次数:
236
什么时候需要转换编码? 你的字符串按GBK编码,但对方要求按UTF16编码。 如:char str[]="你好"; 4个字节,发送给对方,但对方只接受UTF16编码 VC下的转换方法: 不同的平台都提供函数来做编码转换,这里介绍在VC下的转换方法 VC中,用wchar_t代表宽字符,相当于short ...
分类:
其他好文 时间:
2016-09-22 19:51:29
阅读次数:
180
本篇随笔为转载,原贴地址:《C++ Primer》第8章 IO库 学习笔记。 1.IO类 fstream和sstream都继承于iostream,所以iostream有的操作他们都有。 另外流前面加字母w表示针对宽字符。 2.IO对象无拷贝和赋值 错误,不能拷贝和赋值 因为流不能拷贝和赋值,所以流作 ...
分类:
编程语言 时间:
2016-09-04 15:54:52
阅读次数:
260