1. ShortString 类型 定义:type ShortString = string[255]; 内存结构与大小:ShortString 是每个字符为单字节的字符串.ShortString 的变量实际是一个指针,它指向堆中一个256字节大小的数据结构,第一个字节是字符串总字节的数目(不一定是字符数目),后面是字符的字节表示.ShortString 类型的变量最多可以容纳255个字符,超出的部分将会被丢弃.ShortString 可以存储非ASCII字符,这些字符以操作系统的 codepa…
本节内容: 前言 相关概念 Python中的默认编码 Python2与Python3中对字符串的支持 字符编码转换 一.前言 Python中的字符编码是个老生常谈的话题,同行们都写过很多这方面的文章.有的人云亦云,也有的写得很深入.近日看到某知名培训机构的教学视频中再次谈及此问题,讲解的还是不尽人意,所以才想写这篇文字.一方面,梳理一下相关知识,另一方面,希望给其他人些许帮助. Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编码:Python3的 默认编码 为Uni…
本文引自:http://www.danieleteti.it/category/embarcadero/delphi-xe7-embarcadero/ 并行编程库是delphi XE7中引进的最受期待的功能之一.下面是一个简单的并行编程例子:   procedure TFormThreading.Button1Click(Sender: TObject); var tasks: array of ITask; value: Integer; begin value := ; tasks := […
Delphi XE7中添加了新的并行库,和.NET的Task和Parellel相似度99%. 详细内容能够看以下的文章: http://www.delphifeeds.com/go/s/119574 假设你熟悉.NET.这个功能并没有大的新意,可对Delphi程序猿来说却很有用.之前要实现多线程,唯一的办法是使用TThread类,并且过程十分繁琐. 新的并行库彻底简化了这个过程. 预计下一步就该实现Async和Await异步运行结构了 另外近期Delphi的排名居然有所上升而且进了前十,对还在用…
[转]Python中的字符串与字符编码 本节内容: 前言 相关概念 Python中的默认编码 Python2与Python3中对字符串的支持 字符编码转换 一.前言 Python中的字符编码是个老生常谈的话题,同行们都写过很多这方面的文章.有的人云亦云,也有的写得很深入.近日看到某知名培训机构的教学视频中再次谈及此问题,讲解的还是不尽人意,所以才想写这篇文字.一方面,梳理一下相关知识,另一方面,希望给其他人些许帮助. Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编…
Analyze 静态分析工具中显示 大量的CF类型指针 内存leak 问题   今天使用Analyze 看了下项目,   解决办法,项目中使用了ARC,OC的指针类型我们完全不考虑release的问题,但是使用CF 的地方就不同,CF类型的指针我们是采用__bridge** 处理的,但是处理的时间还是出现了内存泄漏, CFArrayRef results = ABAddressBookCopyArrayOfAllPeople(addressBook);   使用了必须采用CFRelease(re…
Delphi XE7有一个对JSON处理的单元,在你需要使用JSON的单元里面引入"System.json",随后你就可以用Delphi自己的json处理类了.我写的小例子只是对包含字符串和数组的JSON进行解析,这两种数据类型,我觉得是实际使用中最常用.有用的类型,所以我仅仅用这两种例子做演示! 演示代码: { 功能:DelphiXE7中使用JSON -------------------------------------------------------------------…
介绍一下java字符集和字符的编码方式, 首先要区分一下字符集和字符编码.所谓的字符集 类似于unicode,GB2312,GBK,ASCII等等.因为一开始只有26个英文字母需要 编一下号.所有用下ASCII就够了,但是随着计算机的发展,有更多的文字需要在计算机中进行表现,包括拉丁文,日文,中文等等,因此各国有发展了 各自国家文字的字符集. 然后为了统一地球,把所有国家的文字集中起来,发展了unicode(废话很多) unicode一开始是用2个字节(16位)对应一个符号.这跟java中一个c…
在delphi XE7的程序开发中,消息机制保证进程间的通信. 在程序中,消息来自: 1)系统: 通知你的程序用户输入,涂画以及其他的系统范围的事件: 2)你的程序:不同的程序部分之间的通信信息.   什么时候使用消息?       当你写程序的时候,通常是使用事件而不是消息,控件触发事件让你来处理而其内部则是通过消息机制处理的(对你是透明的),从而实现和其他控件之间的通信以及处理系统信息.       不管咋样,有时你确实需要使用消息. 你的程序必须响应一个系统或者框架没有定义的事件(或者没有…
首先引用一个例子在java中可能你会遇到这样的问题: 例:0.99999999f==1f //true 0.9999999f==1f //false 这是超出精度造成的,为了知道为什么会造成这样的问题,首先了解一下float和double的内存结构 1.内存结构 float和double的范围是由指数的位数来决定的.float的指数位有8位,而double的指数位有11位,分布如下: float:1bit(符号位) 8bits(指数位) 23bits(尾数位) double:1bit(符号位)…