|
发表于 2021-4-16 18:40:14
|
显示全部楼层
广东省广州市
|
编码_URL解码 | 文本型 | | |
URL | 文本型 | | | | 是否UTF8 | 逻辑型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | dwSize | 整数型 | | | pUrl | 整数型 | | | pBuf | 整数型 | | | cBuf | 字节型 | | | sByte | 短整数型 | | | szText | 字节集 | | | i | 整数型 | | |
dwSize = 取文本长度 (URL )如果真 (dwSize = 0 )返回 (“”)pUrl = 取指针_文本型 (URL)pBuf = malloc (dwSize + 1 )判断循环首 (i ≤ dwSize )cBuf = __get_byte (pUrl, 0 )判断 (cBuf = 37 ) sByte = 指针_到短整数型_汇编 (pUrl + 1 )pUrl = pUrl + 3 sscanf (取指针地址_短整数型 (sByte ), “%x”, cBuf )__set_byte (pBuf, i, cBuf )判断 (cBuf = 43 ) pUrl = pUrl + 1 __set_byte (pBuf, i, 32 )判断 (cBuf > 38 且 cBuf < 43 或 cBuf = 45 或 cBuf = 46 或 cBuf > 47 且 cBuf < 58 或 cBuf > 64 且 cBuf < 91 或 cBuf > 96 且 cBuf < 123 )pUrl = pUrl + 1 __set_byte (pBuf, i, cBuf )跳出循环 ()i = i + 1判断循环尾 ()如果真 (i > 0 )szText = 指针到字节集 (pBuf, i )free (pBuf)如果真 (是否UTF8 )返回 (编码_Utf8到Ansi (szText )) 返回 (取字节集 数 据 (szText, #文本型, ))
优化来了!比汇编慢一丢丢,比原来快N倍~ |
评分
-
参与人数 1 | 荣誉 +1 |
收起
理由
|
笨潴
| + 1 |
热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻! |
查看全部评分
|