摘要: 1、原则上尽量少使用全局变量,因为全局变量的生命周期太长,容易出错,也会长时间占用空间.各个源文件负责本身文件的全局变量,同时提供一对对外函数,方便其它函数使用该函数来访问变量。 比如:niSet_ValueName(…);niGet_ValueName(…);不要直接读写全局变量,尤其是在多线程编程时,必须使用这种方式,并且对读写操作加锁。2、参数命名要恰当,顺序要合理。 例如编写字符串拷贝函数str_copy,它有两个参数。如果把参数名字起为str1 和str2,例如 void str_copy (char *str1, char *str2); 那么我们很难搞清楚究竟是把str1 拷贝. 阅读全文
posted @ 2013-07-06 14:24 gfrrh 阅读(352) 评论(1) 推荐(0)
摘要: Google、微软、苹果每年5、6月间相继召开的大会总是被消费者议论得热热闹闹,但这实质上是几家CEO招揽开发者的活动,不只是送硬件还是讲愿景,这些平时大公司的CEO都卯足了劲儿。在Windows Build 2013的第一天,微软就迫不及待地发布了Windows 8的最新版本8.1,包括加回“开始”按钮、个性化UI背景、全面植入Bing搜索在内的种种特点都被已经被提前预知。虽然估计第二天大部分的媒体都会拿“开始”按钮做标题,但鲍尔默的演讲中还是展现出“这只是一点小妥协,微软和他自己并没有放弃win8的愿景”。Win 8.1向易用性改动还是回到“开始”上,这还不算什么,新版本在开机后允许用户直 阅读全文
posted @ 2013-07-06 14:12 gfrrh 阅读(194) 评论(0) 推荐(0)
摘要: 从数据缓存的角度来说,缓存分为数据缓存和网页缓存,网页缓存是一次性读取,一次性输出的,这个是没有办法,而且也很少看到那个网站的源代码体积几百K的,更不用说超过1024k了;剩下的就是数据缓存,缓存的数据类型无非就是字符串、数组、json、序列化等,一般序列化和JSON数据也是数组转换过来的,我觉得也太麻烦了。如果你真的有超过1MB的数据需要缓存,但是你还在内存中对数据进行格式化,我觉得你完全是要逆天了。我用一个简单的案例来说说我这个大缓存的存储与读取。案例:采集现在采集可以设置从多少页采集到多少页,那么我是不是可以先获取所有的内容页,将内容页网址全部缓存后一条条处理?如果你没有巧妙的读取缓存的 阅读全文
posted @ 2013-07-06 13:54 gfrrh 阅读(1142) 评论(0) 推荐(0)
摘要: 验证url 网址 这款url验证函数是一款可以验证任何合法的网址哦,包括端口也在里了,ip地址,htt,ftp,rtsp,mss等。 阅读全文
posted @ 2013-07-06 13:43 gfrrh 阅读(857) 评论(0) 推荐(0)
摘要: JAVA如何实现解析xls文件,具体看如下java代码:/** * 解析DBF文件 * @param in * @return List> columns通过AMF编码之后的字符串 * @throws Exception */ public static String parseDbf2Map(InputStream in)throws Exception { DBFReader dbfreader = new DBFReader(in); dbfreader.setCharactersetName("GB2312"); List> columns = n... 阅读全文
posted @ 2013-07-06 13:35 gfrrh 阅读(598) 评论(0) 推荐(0)