- 博客(152)
- 资源 (10)
- 收藏
- 关注
原创 Google Volley使用之基础
PS一句:最终还是选择CSDN来整理发表这几年的知识点,该文章平行迁移到CSDN。因为CSDN也支持MarkDown语法了,牛逼啊!开源项目链接Volley Android Developer文档Volley主页:https://android.googlesource.com/platform/frameworks/volleyVolley仓库:git clone https://android.
2015-04-27 10:34:11 4736 1
原创 ASimpleCache开源库使用分析
PS一句:最终还是选择CSDN来整理发表这几年的知识点,该文章平行迁移到CSDN。因为CSDN也支持MarkDown语法了,牛逼啊!开源项目链接ASimpleCache源码浅析首先看下如下结构图,思维导图展示了ACache源码类结构:如上图所示,ACache类的构造方法为private的,所以只能通过get方式获取实例。默认情况下调运ACache.get(Context);方法得到的缓存文件放置在/
2015-04-27 10:24:20 6891
原创 Android Studio入门到精通
PS一句:最终还是选择CSDN来整理发表这几年的知识点,该文章平行迁移到CSDN。因为CSDN也支持MarkDown语法了,牛逼啊!目标:Android Studio新手–>下载安装配置–>零基础入门–>基本使用–>调试技能–>构建项目基础–>使用AS应对常规应用开发AS简介经过2年时间的研发,Google终于正式发布了面向Android开发者的集成开发环境Android Studio 1.2(稳定
2015-04-27 09:59:21 188868 33
原创 Android一种View动态折线绘制的实现实战
由于工作需要,模拟一个signal变化量走势,所以需要绘制折线动态图,话说使用achartengine这个jar包就能实现各种图形绘制,but工程导入一个包在大小上毕竟是要付出代价的嘛,况且只是为了实现画一条动态曲线嘛,故就用重写View实现了下,还是惯例,直接上代码。最主要的实现类:package com.jesse.paintline1;import java.util.Array
2014-03-11 11:12:12 27499 25
原创 .bash_profile与.bashrc和.profile的区分概念
在Linux系统中配置环境变量相关的文件主要有如下几个,很容易弄混的,这儿简单区分下:/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置./etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.~/.bash_
2013-09-04 12:53:23 2242
原创 C功底挑战Java菜鸟入门概念干货(三)
(上接:C功底挑战Java菜鸟入门概念干货(二))一、Java异常处理基础1、程序中没有处理异常代码时,Java 的默认异常处理机制会做下面的操作: (1)、抛出异常。 (2)、停止程序运行。 2、异常处理是由 try、catch 与 finally 三个关键字所组成的程序块。 3、try 程序块中若有异常发生时,程序的运行便会中断,抛出“由系统类所产生的对象”,并依下列的
2013-09-02 08:42:23 2475 2
原创 C功底挑战Java菜鸟入门概念干货(二)
(接上篇博文:C功底挑战Java菜鸟入门概念干货(一))一、Java面向对象程序设计-类的基本形式1、“类”是把事物的数据与相关的功能封装在一起,形成的一种特殊结构,用以表达对真实世界的一种抽象概念。 2、Java 把数据成员称为 field(属性),把方法成员称为 method(方法)。 3、由类所创建的对象称为 instance,译为“实例”。 4、创建属于某类的对象,可通
2013-08-31 16:17:33 2064
原创 C功底挑战Java菜鸟入门概念干货(一)
一、认识Java1、Java 程序比较特殊,它必须先经过编译,然后再利用解释的方式来运行。 2、Byte-codes 最大的好处是——可越平台运行,可让“一次编写,处处运行”成为可能。 3、使用 classpath 可以指定 class 的运行路径。二、走进Java1、Java 语言的注释方式有三种: (1)“//”记号开始,至该行结束; (2)“/*”与“*/
2013-08-30 15:17:33 2805
原创 Linux设备驱动构建内核树
学习Linux设备驱动时第一步就是构建内核树,首先下载Linux内核,按Linux Device Dervier 3作者的说法,只要是linux-2.6.xxx的内核都可以,我的是linux-2.6.30.4。具体步骤:(1) 下载内核源码包,并解压:[root@yanbo kerneltest] # tar -zxvf linux-2.6.30.4.tar.gz(2) [root
2013-06-05 08:44:06 2551
原创 C语言回调函数浅析
在做C语言开发,尤其是中间层开发过程中,回调函数是我们必须掌握的一种方法。由于本人也是刚工作,属于实习期。过去对回调函数有些了解与应用,但是在这里为了加深理解,方便查阅,我对自己回调心得有以下认识,谢谢笑纳,批评指正。我的联系方式在博客左侧。 俺理解的回调概念: 回调函数可以把调用者与被调用者分开,所以调用者不关心谁是被调用者。它只需知道存在一个具有特定原型和限制条件的被调运函
2013-04-26 17:18:05 3253
原创 big endian和little endian字节序
这个概念在学S3C2440时已经接触过,在这里再啰嗦下加深印象:CPU通常分为大端模式和小端模式。谈到字节序的问题,必然牵涉到两大CPU派系。那就是Motorola的PowerPC系列CPU和Intel的x86系列CPU。PowerPC系列采用big endian方式存储数据,而x86系列则采用little endian方式存储数据。无独有偶,所有网络协议也都是采用big endian的方式来
2013-04-23 13:39:53 1471
原创 Linux下清空缓冲区的方法
C标准规定fflush()函数是用来刷新输出(stdout)缓存的。对于输入(stdin),它是没有定义的。但是有些编译器也定义了fflush( stdin )的实现,比如微软的VC。其它编译器是否也定义了fflush( stdin )的实现应当查找它的手册。 GCC编译器没有定义它的实现,所以不能使用fflush(stdin)来刷新输入缓存。对于没有定义fflush(stdin)的编译
2013-03-26 10:36:26 4956
原创 C语言内存分布图
别的不多说了,图比文字更具有描述力,自己看!一直都把堆栈放一起,所以很多人会误以为他们的组合是一个词语,就像“衣服”一样简单,其实不然,今天在下就将最近学习总结的一些与大家分享。 一个由C/C++编译的程序占用的内存分为以下几个部分: 1、栈区(stack):又编译器自动分配释放,存放函数的参数值,局部变量的值等,其操作方式类似于数据结构的栈。
2013-03-24 16:59:32 15160 6
转载 extern详解
1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。此外extern也可用来进行链接指定。 也就是说extern有两个作用,第一个,当它与"C"一起连用时,如: extern "C" void fun(int a, int b);则告诉编译器在编译fun这个函数名时按着C的规则去翻译相应的函数
2013-03-24 15:52:32 1318
转载 源代码就是设计(Jack Reeves)
Jack Reeves著 邓辉 译(转载自网络)本文摘自《敏捷软件开发:原则、模式与实践》(清华大学出版社,2003年9月版)。这是一篇伟大的论文,该文撰写于1992年,作者在当时就能有这样的反思,实在是非常了不起。至今,我仍能记起当我顿悟并最终产生下面文章时所在的地方。那是1986年的夏天,我在加利福尼亚中国湖海军武器中心担任临时顾问。在这期间,我有幸参加了一个关于Ada
2013-03-21 17:06:36 2831
原创 C语言位段理解
信息的存取一般以Byte为单位。实际上,有时存储一个信息不必用一个或多个字节,例如,“真”或“假”用0或1表示,只需1位即可。在计算机用于过程控制、参数检测或数据通信领域时,控制信息往往只占一个字节中的一个或几个二进制位,常常在一个字节中放几个信息。怎样向一个字节中的一个或几个二进制位赋值和改变它的值呢?可以用以下两种方法:(1)可以人为地将一个int变量data分为几部分。
2013-03-20 19:36:33 4020
原创 小心fseek函数的返回值
有时候我们正常写程序时代码没有问题的情况下,认为fseek的返回值不是0就是其他,即认为一旦seek出界文件都返回菲0值。其实以前我也没太在意,没有极端测试,这次公司实习解Ts流时为了保证代码的健壮性,和同事讨论发现fseek函数远远不是我想像中那样返回。Moves the file pointer to a specified location.int fseek( FILE *stre
2013-03-20 15:26:17 7618 2
转载 static详解
当使用static修饰变量、函数、成员变量、成员函数等的时候可以达到很好的隐藏它们的作用,效果如下:一、修饰变量和函数1,用static修饰的变量的声明式即为其定义式。如果没有手动的初始化,系统会为该变量提供一个初始值。但是static变量最好在使用的编译单元里(.c/.cpp)声明定义,如果定义在头文件里,如果头文件被重复引用讲导致变量的重复定义。在编译单元里定义static变量
2013-03-14 16:35:23 2520
原创 GCC编译四步标准
标准ANSI C:这一标准是 ANSI(美国国家标准局)于 1989 年制定的 C 语言标准。后来被 ISO(国际标准化组织)接受为标准,因此也称为 ISO C。ANSI C 的目标是为各种操作系统上的 C 程序提供可移植性保证,而不仅仅限于 UNIX。 该标准不仅定义了 C 编程语言的语发和语义,而且还定义了一个标准库。这个库可以根据 头文件划分为 15 个部分,其中包括:字符类
2013-03-12 13:46:35 3621
原创 sscanf() 实战
sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: int sscanf( const char *, const char *, ...); int sscanf(const char *buffer,const char *format,[argument ]...); buffer 存储的数据 fo
2012-12-13 10:38:37 1230
原创 C语言标记化结构初始化语法扫盲
以前在学习C语言时听说过所谓的C语言标记化结构初始化语法,但当时出于偷懒就没有细究。最近学习Linux设备驱动,就对它的结构体初始化写法感到奇怪,所有的初始化代码都写清了变量名,并且变量名前面还有一个诡异的点。又遇到了,就查了一下,长见识了啊,此种初始化写法并不是什么特殊的代码风格,而是所谓的C语言标记化结构初始化语法(designated initializer),而且还是一个ISO标准。
2012-12-11 20:06:28 1652
原创 有意思的stdarg.h头文件
stdarg.h是C语言中C标准函数库的头文件,stdarg是由standard(标准) arguments(参数)简化而来,主要目的为让函数能够接收可变参数。C++的cstdarg头文件中也提供这样的功能;虽然与C的头文件是兼容的,但是也有冲突存在。 可变参数函数的参数数量是可变动的,它使用省略号来忽略之后的参数。例如c语言中的printf函数一般。代表性的声明为:int c
2012-12-11 18:34:59 1686
原创 驱动模块编译总结
首先内核编译过程中最容易犯得一类错误是编译器版本不匹配(太低),所以在编译前首先习惯检查编译器版本。现在简单总结下驱动模块的编译及安装方法及对比:方法一:自己编写Makefile文件(详见我的另一篇博文),指定内核源码树等,使用make指令编译,然后动态添加使用insmod。感悟:该方法适用于内核驱动开发阶段,具有方便高效的开发过程。方法二:修改内核源码目录树下对应驱动路径文件,例如:
2012-12-11 10:03:05 1543
原创 Linux环境变量配置总结
在 linux系统 下,如果你下载并安装了应用程序,很有可能在键入它的名称时出现“ command not found ”的提示内容。如果每次都到安装目标文件夹内,找到可执行文件来进行操作就太繁琐了。这涉及到环境变量 PATH 的设置问题,而 PATH 的设置也是在 linux 下定制环境变量的一个组成部分。 Linux 是一个多用户的操作系统。每个用户登录系统后,都会有一个专用
2012-12-10 16:44:13 2995
原创 驱动入门hello实例解析
首先在终端vim一个文件名为hello.c,输入内容如下: 1 #include 2 #include 3 4 MODULE_LICENSE("GPL"); 5 MODULE_AUTHOR("Snooy"); 6 7 static int howmany = 10; 8 module_param(howmany,int,S_IRUGO);
2012-12-10 16:21:46 1436
转载 BSD、GPL、MIT等五种开源协议比较解析
转自:http://www.xjq123.com/html/98/n-13398.htmlBSD开源协议BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。但”为所欲为”的前提当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三
2012-12-10 15:47:20 3877
转载 Linux常见服务器配置
环境:host : Windows XP SP2 guest : VMWARE Fedora10linux网络设置:1 、 查看本机物理网卡的内网IP:192.168.1.252,后面可以ping一下该ip,则可知道桥接是否成功。2 、 关闭 Fedora10 中的防火墙,#service iptables stop3 、 设置虚拟机中的 Lin
2012-12-09 18:03:14 5549
原创 C语言关键字volatile(不知道的别说你是干嵌入式的)
我在网上看见一个帖子说回答不出这个问题的人是不会被雇佣的。这是区分C程序员和嵌入式系统程序员的最基本的问题。搞嵌入式的家伙们经常同硬件、中断、RTOS等打交道,所有这些都要求用到volatile变量。下面来看下面试题中提到的问题(答案我从网络整理,以便复习):关键字volatile有什么含意?并给出三个不同的例子。volatile的本意是“易变的” 由于访问寄存器的速度要快过RAM
2012-12-09 17:55:03 9673 2
原创 实时系统与分时系统简单理解
第一次写博客,以记录我的技术之路。首先了解下系统的个子特点:分时操作系统特点:多路性、交互性、独立性、及时性 实时操作系统特点:多路性、交互性 、独立性、及时性、可靠性细说实时系统与分时系统的比较: (1) 多路性。实时信息处理系统也按分时原则为多个终端用户服务。实时控制系统的多路性则主要表现在系统周期性地对多路现场信息进行采集,以及对多个对象或多个执行机构
2012-12-08 15:22:52 5955 1
ARKitPlusVR
2024-04-10
数据可视化平台源码和资料
2024-04-10
Json To Delphi Class Generator / JSON Data Binding Tool
2024-04-09
一个万能的刮刮乐控件 无论是UILabel、UIImageView,还是自定义视图,只要是UIView都可以用来刮
2024-04-09
核心部分由 Visual Basic 语言编写的 QQ机器人 插件SDK
2024-04-09
纸张计数显示装置-电子设计大赛
2024-04-09
基于Android的天气APP毕业设计项目
2024-04-09
Sql语句50条案例,从创建数据库入门到进阶
2024-04-08
c语言实现ini文件读写操作
2024-04-08
c++/c# network server library
2024-04-08
全国计算机二级python考试
2024-04-08
golang 后台管理系统基础功能
2024-04-08
PHP 文章集锦,浮点数搞定度运算、签名验证、单点登录、安全防御、缓存技术、RPC、Composer
2024-04-08
基于stm32的蓝牙智能小车设计
2024-04-08
蓝桥杯嵌入式近五年赛题,代码
2024-04-08
ACM模板和一些题目的代码实现
2024-04-08
python爬虫,包含大小项目
2024-04-08
在 Apple Silicon Mac 上入门汇编语言
2024-04-08
学生成绩管理系统/学生信息管理系统
2024-04-08
LInux 平台下物联网网关(多线程实现),嵌入式项目
2024-04-08
人力资源机器(程序员升职记)的Ruby算法
2024-04-08
Python学习第三方库案例源码(多个三方库)
2024-04-08
Object-C 通过 ARKit 实现的太阳系动画
2024-04-07
Java 或大数据开发者找工作必备材料
2024-04-07
SwiftLint 源码
2024-04-07
数据库设计课程设计-高校选课管理系统源码
2024-04-07
一个基于 React Native 的 Android 企业级应用
2024-04-07
rust elf format 文件解析查看器源码
2024-04-07
一个基于 Kotlin Compiler Plugin 实现的迷你方法耗时无侵入编译插件
2024-04-07
gradle-javadoc-checker-master
2024-04-07
vue3+vite+javascript+pina+ant-design-vue实现的一个pc端后台管理系统
2024-04-07
前端开发文档,涵盖系列手把手教程
2024-04-07
android LabelView 自定义各种效果的 label 控件
2024-04-07
使用peach进行模糊测试从入门到放弃全套资料,包含英文文档和中文文档
2024-04-07
使用Python的各种爬虫真实案例源码资源
2024-04-07
Ts Stream Parser
2024-04-05
一个基于纯 TypeScript + Webpack + Less 实现的迷你 web 版贪吃蛇小游戏
2024-04-05
Rust Http 1.1 协议实现,非常适合初学者的最佳实践项目
2024-04-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人