- 博客(86)
- 资源 (9)
- 收藏
- 关注
转载 android正则表达式及Pattern Matcher使用
众所周知,在程序开发中,难免会遇到需要匹配、查找、替换、判断字符串的情况发生,而这些情况有时又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力。因此,学习及使用正则表达式,便成了解决这一矛盾的主要手段。 大 家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配
2013-03-21 16:12:59 2294
原创 20230311博客搬家过来的文章不一定是原创
在2013.03.11从网易搬家过来的文章会自动打上“原创”的标签。但不一定是原创。引用的文章,在文章内都有相关链接。
2013-03-11 22:11:49 594
原创 C/C++程序员应聘常见面试试题剖析(超级详细解析)
1.引言 本文的写作目的并不在于提供c/c++程序员求职面试指导,而旨在从技术上分析面试题的内涵。文中的大多数面试题来自各大论坛,部分试题解答也参考了网友的意见。 许多面试题看似简单,却需要深厚的基本功才能给出完美的解答。企业要求面试者写一个最简单的strcpy函数都可看出面试者在技术上究竟达到了怎样的程度,我们能真正写好一个strcpy函数吗?我们都觉得自己能,可是我们写出的strcpy很
2013-03-11 22:05:15 743
原创 BAT脚本语言
BAT 命令大全1 echo 和 @ @ #关闭单行回显echo off #从下一行开始关闭回显@echo off #从本行开始关闭回显。一般批处理第一行都是这个echo on #从下一行开始打开回显echo #显示当前是 echo of
2013-03-11 22:05:13 1777
原创 C中的预编译宏定义
在将一个C源程序转换为可执行程序的过程中, 编译预处理是最初的步骤. 这一步骤是由预处理器(preprocessor)来完成的. 在源流程序被编译器处理之前, 预处理器首先对源程序中的"宏(macro)"进行处理. C初学者可能对预处理器没什么概念, 这是情有可原的: 一般的C编译器都将预处理, 汇编, 编译, 连接过程集成到一起了. 编译预处理往往在后台运行. 在有的C编译器中, 这些过程统统由
2013-03-11 22:05:11 619
原创 将vim打造成IDE编译环境——自己用的vim(gvim)插件
网上经过多方搜索,在前大神们的指导下,终于让自己的vim有了一点雏形。但是网上的一些教程难免有笔误,或者是与自己不符的地方,特此立文,防止重装环境后不好找这些插件。主要参考: http://blog.csdn.net/tge7618291/article/details/4216977 http://blog.csdn.net/wooin/article/det
2013-03-11 22:05:07 894
原创 Android实现全屏正确方法介绍
在开发中我们经常需要把我们的应用设置为全屏,这里我所知道的有俩中方法,一中是在代码中设置,另一种方法是在配置文件里改!一、在代码中设置:view plaincopy to clipboardprint? package com.android.tutor; import android.app.Activity; import android.os.Bundle;
2013-03-11 22:05:04 570
原创 Android Activity和Intent机制学习笔记
ActivityAndroid中,Activity是所有程序的根本,所有程序的流程都运行在Activity之中,Activity具有自己的生命周期(见http://www.cnblogs.com/feisky/archive/2010/01/01/1637427.html,由系统控制生命周期,程序无法改变,但可以用onSaveInstanceState保存其状态)。对于Activity,关键是其生
2013-03-11 22:05:02 495
原创 理解C++ dynamic_cast
在面向对象程序设计中,有时我们需要在运行时查询一个对象是否能作为某种多态类型使用。与Java的instanceof,以及C#的as、is运算符类似,C++提供了dynamic_cast函数用于动态转型。相比C风格的强制类型转换和C++ reinterpret_cast,dynamic_cast提供了类型安全检查,是一种基于能力查询(Capability Query)的转换,所以在多态类型间进行转换
2013-03-11 22:05:00 538
原创 BAT/DOS压缩文件RAR与ZIP的DOS命令详解
压缩目录test及其子目录的文件内容Wzzip test.zip test –r -PWINRAR A test.rar test –r删除压缩包中的*.txt文件Wzzip test.zip *.txt -dWinRAR d test.rar *.txt刷新压缩包中的文件,即添加已经存在于压缩包中但更新的文件Wzzip test.zip test –fWinrar f test.rar test
2013-03-11 22:04:58 3646
原创 bat set命令详解
例子: @echo off set var=我是值 echo %var% pause 请看 set var=我是值 ,这就是BAT直接在批处理中设置变量的方法! set 是命令 var是变量名 =号右边的"我是值"是变量的值 在批处理中我们要引用这个变就把var变量名用两个%(百分号)扩起来,如%var% 这种SET语法只能直接在BAT代码的酸前赋予变量的值,有时候我们
2013-03-11 22:04:56 782
原创 面试中经常出现的算法
二分查找的代码.int bfind(int* a,int len,int val){ int m = len/2; int l = 0; int r = len; while(l!=m && r!= m) { if(a[m] > val) { r = m; m = (m+l)/2;
2013-03-11 22:04:54 535
原创 C|C++中的静态全局变量,静态局部变量,全局变量,局部变量的区别
static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。 一、面向过程设计中的static 全局变量、局部变量、静态全局变量、静态局部变量的区别 C++变量根据定义的位置的不同的生命周期,具有不同的作用域,作用域可分为6种:全局作用域,局部作用域,语句作用域,类作用域,命名空间作用域和文件
2013-03-11 22:04:52 690
原创 堆/栈/动态存储方式/静态存储方式
动态存储方式所谓动态存储方式是指在程序运行期间根据需要进行动态的分配存储空间的方式。动态存储变量是在程序执行过程中,使用它时才分配存储单元, 使用完毕立即释放。 典型的例子是函数的形式参数,在函数定义时并不给形参分配存储单元,只是在函数被调用时,才予以分配, 调用函数完毕立即释放。如果一个函数被多次调用,则反复地分配、 释放形参变量的存储单元。静态存储方式所谓静态存储方式是指在程序编译期间分配固定
2013-03-11 22:04:50 746
原创 堆和栈的区别
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两回事,分配方式倒是类
2013-03-11 22:04:48 435
原创 标准库STL中的map和set
摘要:本文列出几个基本的STL map和STL set的问题,通过解答这些问题讲解了STL关联容器内部的数据结构,最后提出了关于UNIX/LINUX自带平衡二叉树库函数和map, set选择问题,并分析了map, set的优势之处。对于希望深入学习STL和希望了解STL map等关联容器底层数据结构的朋友来说,有一定的参考价值。STL map和set的使用虽不复杂,但也有一些不易理解的地方,如:为
2013-03-11 22:04:46 854
原创 工厂模式(c++描述)
简单工厂模式符合面向对象4大原则:可维护,可复用,可扩展,灵活性高,耦合度低,但是他仍然有一个很大的问题就是如果要增加新的产品,必须对工厂进行修改,这就违背了软件设计的开闭原则 。 对于这种问题,我们可以使用工厂模式来解决。 假设我们想要增加一个新的运算乘方运算类,我们可以按如下思想来设计: 设计基于运算基类的乘方类,这和简单工厂模式相同,但在设计工厂的时候,我们把他的加工产品的方式分类
2013-03-11 22:04:44 601
原创 友元函数和友元类
采用类的机制后实现了数据的隐藏与封装,类的数据成员一般定义为私有成员,成员函数一般定义为公有的,依此提供类与外界间的通信接口。但是,有时需要定义一些函数,这些函数不是类的一部分,但又需要频繁地访问类的数据成员,这时可以将这些函数定义为该函数的友元函数。除了友元函数外,还有友元类,两者统称为友元。友元的作用是提高了程序的运行效率(即减少了类型检查和安全性检查等都需要时间开销),但它破坏了类的封装性和
2013-03-11 22:04:41 493
原创 BAT脚本获取当前路径
@echo off echo 当前盘符:%~d0 echo 当前盘符和路径:%~dp0 echo 当前批处理全路径:%~f0 echo 当前盘符和路径的短文件名格式:%~sdp0 echo 当前CMD默认目录:%cd% pause
2013-03-11 22:04:39 1210
原创 解析手机号码格式
1.1.1 号码组成MDN号码为本网移动用户作被叫时,主叫用户所需拨的号码。采取E.164编码方式;存储在HLR和VLR中,在MAP接口上传送。DN号码的结构如下: CC + MAC + H0 H1 H2 H3 + ABCD其中:CC:是国家码,中国使用86。MAC:是移动接入码,本网采用网号方案,为133。H0H1H2H3:HLR识别码,由联通总部统一分配。ABCD:移动用户号,由各
2013-03-11 22:04:37 4153 1
原创 MTK平台 获取本机的SIM卡中IMSI号
公司MTK平台做开发,老板要求在MTK的代码上获得本机上SIM卡的手机号码,查了很多资料后,结果是无法获得,原因是手机号码不是直接存储在SIM卡的,而是信号通过移动商(移动、联通或电信)时绑定的;IMSI是sim卡的一个属性号,在移动系统中是跟sim卡号绑定的,开户之后跟手机号绑定,开户的过程就是将你的IMSI和手机号发给交换机HLR,这样子来电话的时候交换机就可以找到你了。 退而求其次
2013-03-11 22:04:35 1388
原创 perl 里的<>和<STDIN>
首先介绍一下@ARGV: 当perl脚本运行时,从命令行上传递给它的参数存储在内建数组@ARGV中,@ARGV是PERL默认用来接收参数的数组,可以有多个参数,$ARGV[0]是表示接收到的第一个参数,$ARGV[1]表示第二个。 之前,你还有机会修改@ARGV的值。例如,下面程序可以处理3 个指定的文件,无论用户在命令行中输入了什么其它的文件:@ARGV = qw# larry mor curl
2013-03-11 22:04:33 890
原创 bat set命令
一、BAT直接在批处理中显示变量例子:@echo offset var=我是值echo %var%pause请看 set var=我是值 ,这就是BAT直接在批处理中设置变量的方法!set 是命令 var是变量名 =号右边的"我是值"是变量的值在批处理中我们要引用这个变就把var变量名用两个%(百分号)扩起来,如%var%这种SET语法只能直接在BAT代码的酸前赋予变量的值,有时候我们需要提供一个
2013-03-11 22:04:31 715
原创 批处理如何计算任意字符串的字符长度?
如题:比如 "ABCDEFGHIJ AGFD FAS DFDS" 引号中包含字母和空格的一个字符串,如何编辑批处理计算出其长度?方法一:T.CMD 内容如下: 运行 T.CMD "ABC DEF GHI " 就可以得到引号中字符串的长度-------------------------------------@ECHO OFFIF %1*==* GOTO :EOFECHO %1SET A
2013-03-11 22:04:29 8188
原创 批处理 for /f
批处理for命令详解FOR这条命令基本上都被用来处理文本,但还有其他一些好用的功能!看看他的基本格式(这里我引用的是批处理中的格式,直接在命令行只需要一个%号)FOR 参数 %%变量名 IN (相关文件或命令) DO 执行的命令参数:FOR有4个参数 /d /l /r /f 他们的作用我在下面用例子解释%%变量名 :这个变量名可以是小写a-z或者大写A-Z,他们区分大小写,FOR会把每个读取到的值
2013-03-11 22:04:27 711
原创 C C++可变参数学习笔记
前言: 本文在很大程度上改编自网友kevintz的“C语言中可变参数的用法”一文,在行文之前先向这位前辈表示真诚的敬意和感谢。 本人转自:http://topic.csdn.net/t/20041124/09/3582660.html一、什么是可变参数 我们在C语言编程中有时会遇到一些参数个数可变的函数,例如printf()函数,其函数原型为: int printf(
2013-03-11 22:04:25 566
原创 C和C++混编,c调用C++,c++调用C
摘抄一: 1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变 量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”), 因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式与
2013-03-11 22:04:23 540
原创 MTK开机流程-MMI部分(VC模拟器)
MTK开机流程-MMI部分(VC模拟器)基于53平台09A版本,通过VC模拟器调试,整理出一条大概的MMI开机流程,后续完善。- Hardward boot and setup system statck etc.- Nucleus Plus RTOS initialization- Hardware initialization- Tasks/Modules initialization/con
2013-03-11 22:04:20 992
原创 再谈perl find xargs命令
一、find 命令格式1、find命令的一般形式为;2、find命令的参数;3、find命令选项;4、使用exec或ok来执行shell命令;二、find命令的例子;1、查找当前用户主目录下的所有文件;2、为了在当前目录中文件属主具有读、写权限,并且文件所属组的用户和其他用户具有读权限的文件;3、为了查找系统中所有文件长度为0的普通文件,并列出它们的完整路径;4、查找/var/logs目录中更改时
2013-03-11 22:04:18 1645
原创 批处理FINDSTR正则表达式用法实例分析
dos或批处理下findstr正则用法,会了这个我们就可以用批处理实现文本等搜索替换等1.findstr . 2.txt 或 Findstr "." 2.txt 从文件2.txt中查找任意字符,不包括空字符或空行 2.findstr .* 2.txt 或 findstr ".*" 2.txt 从文件2.txt中查找任意字符包括空行和空字符 3.findstr "[0-9]" 2.txt 从文件2.
2013-03-11 22:04:16 697
原创 makefile高级用法--使用变量
使用变量————在Makefile中的定义的变量,就像是C/C++语言中的宏一样,他代表了一个文本字串,在Makefile中执行的时候其会自动原模原样地展开在所使用的地方。其与C/C++所不同的是,你可以在Makefile中改变其值。在Makefile中,变量可以使用在“目标”,“依赖目标”,“命令”或是Makefile的其它部分中。变量的命名字可以包含字符、数字,下划线(可以是数字开头),但不应
2013-03-11 22:04:14 1389
原创 makefile高级用法--使用函数2
三、文件名操作函数下面我们要介绍的函数主要是处理文件名的。每个函数的参数字符串都会被当做一个或是一系列的文件名来对待。$(dir ) 名称:取目录函数——dir。 功能:从文件名序列中取出目录部分。目录部分是指最后一个反斜杠(“/”)之前的部分。如果没有反斜杠,那么返回“./”。 返回:返回文件名序列的目录部分。 示例: $(dir src/foo.c hacks)返回值是
2013-03-11 22:04:12 628
原创 makefile高级用法--使用函数
使用函数————在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能。make所支持的函数也不算很多,不过已经足够我们的操作了。函数调用后,函数的返回值可以当做变量来使用。一、函数的调用语法函数调用,很像变量的使用,也是以“$”来标识的,其语法如下: $( )或是 ${ }这里,就是函数名,make支持的函数不多。是函数的参数,参数间以逗号“,”分隔
2013-03-11 22:04:10 836
原创 makefile高级用法--make 的运行
make 的运行 —————— 一般来说,最简单的就是直接在命令行下输入make命令,make命令会找当前目录的makefile来执行,一切都是自动的。但也有时你也许只想让make重编译某些文件,而不是整个工程,而又有的时候你有几套编译规则,你想在不同的时候使用不同的编译规则,等等。本章节就是讲述如何使用make命令的。 一、make的退出码 make命令执行后有三个退出码: 0 —— 表
2013-03-11 22:04:08 653
原创 C语言高效编程的几招
引言: 编写高效简洁的C语言代码,是许多软件工程师追求的目标。本文就工作中的一些体会和经验做相关的阐述,不对的地方请各位指教。第1招:以空间换时间 计算机程序中最大的矛盾是空间和时间的矛盾,那么,从这个角度出发逆向思维来考虑程序的效率问题,我们就有了解决问题的第1招——以空间换时间。例如:字符串的赋值。方法A,通常的办法:#define LEN 32char string1 [LEN];me
2013-03-11 22:04:05 541
原创 MTK socket 小结 4
上次说到Demo的socket 链接,先看HTTP请求。当然要理解这个,得知道一个HTTP请求是什么样子的和HTTP协议的交互过程。要详细了解 可以看 RFC 标准文档。简单来说,HTTP 协议是请求应答模式,客户端发一个请求,服务器短发一个答复。客户端说:要xxx网页,服务器就把xxx网页返回给你。交互就需要一个规范,这个就是请求和应答的头,比如 请求的第一行: GET /index.html
2013-03-11 22:04:03 604
原创 MTK socket 小结 3
昨天说了下socket基本几个函数,还有常用的是域名解析函数。// 通过域名获得ip地址 // is_blocking,是否阻塞,现在只支持none block,也最好用none block // mod_id 如果没有立即获得,那么当查询成完毕,将向该mod 发送消息 // request_id 区分不同的DNS 查询结果。比如在同时查询两个以上,在返回的消息中,就可以通过id来进行区分,这个结
2013-03-11 22:04:01 529
原创 MTK socket 小结 2
今天主要讲一下MTK socket 基本接口。MTK socket 主要是基于 Berkeley sockets,用起来也就大同小异。MTK socket 主要有三种模式:block(阻塞),non-block(非阻塞),Asynchronous(异步),组合方式 也只有三种 1 block ,2 non-block,3 non-block + Asynchronous。block模式下,调用相应
2013-03-11 22:03:59 1075
原创 MTK socket 小结 1
移动互联网也炒了好几年了,现在开发手机也好,单独做应用也好,都会涉及到网络这一块。MTK 提供了网络功能,在GPRS上封装了socket 功能。MTK 上的socket 其实与linux 上的有些相似,其实说到socket 编程,只要封装实现了socket,那么基本上就要实现socket那些接口。先来简单的介绍一下socket,socket 编程是介于 传输层 和 应用层之间,可以简单的理解为so
2013-03-11 22:03:57 837
原创 MTK HISTORY 小结 5
到这里其实主要history 机制主要得功能都基本ok了,其他的好多接口函数都是换汤不换药,主要就是删除history stack 里面的记录,怎么回调需要被删除的screen 的call back,具体就不说了。GoBacknHistory 返回到前n个screen id,这个函数有时候还是比较有用,比如当写一个公用模块,处理完毕后,直接返回到调用的地方,这样就不用在意到底是哪个模块调用的,要回
2013-03-11 22:03:55 480
Xscript开发套件2.1.5.0.zip
2020-10-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人