自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (10)
  • 问答 (1)
  • 收藏
  • 关注

原创 C语言的函数指针数组

函数指针数组概念: 数组元素是指针函数的数组叫做指针函数数组,通常我们也叫做转移表 定义个初始化: 返回类型说明符 (*函数指针数组名[])(参数列表) = {函数指针/函数名,…}; 如下: int (*fun_array[])(int,int) = {add,del,mul,div};函数指针数组的使用如下: 函数指针数组名下标

2016-12-29 23:22:30 8269 1

原创 C语言中的可变参数列表

C语言中的可变参数的列表从语言中有时候会遇到一些参数个数是可变的函数,像scanf,printf等,这些函数内部的参数列表都是可变的 如函数原型:scanf(const char * format,…); 解释:除了format以外,后面跟着的参数 个数,类型是可变的,用…作为一种占位符号。 “…”称为可变参数列表,可以用来接受个数和类型不确定的参数使用: 可

2016-12-29 22:24:16 410

原创 C语言的回调函数

C语言的回调函数:中心思想 将一个函数作为形式参数传递到另外一个函数中去。通过函数指针去调用另外一个函数。回调函数都是在其他地方通过函数指针来进行回调; 相关性: 1. 回调函数跟函数指针相关 2. 其它函数不需要知道回调函数的具体逻辑 优点 这样的函数指针可以降低函数与函数之间的耦合度 回调函数的概念: 1:回调函数就是通过

2016-12-27 22:21:05 433

原创 C函数重点------指针函数与函数指针【精华】

C函数重点——指针函数与函数指针【精华】如果你想从事C的编程,提高你代码的效率。你必须对熟练的掌握指针的运用。这里面有你永远也绕不过去的一道坎,函数指针,指针函数,而函数指针与指针函数也是区别java或者。net非常显著的一点,直接通过函数的地址来操作函数。其实刚开始学这个的时候,我整个人都有点蒙蔽了,什么。C的指针原来可以用的这么的夸张。没错,指针就是那么叼!!!请继续跟我往下看指针函数函数指针

2016-12-26 23:11:35 505

原创 C函数的调用-----递归调用

递归调用(对内存的消耗是极大的)概念: 一个函数在它的函数体内,调用它自身称为递归调用,这种函数叫做递归函数 注意: - C语言的函数中,支持运行时堆栈对递归函数的调用 - 在 递归调用的时候,主调函数又是被调函数,执行调用的过程就是其反复调用自己的过程,每一次调用就会进入新的一层,在前一篇博客中我们提到过,函数栈,那么递归调用在调用自己的过程中,同样也是会不断开辟函数栈

2016-12-26 22:54:59 2109

原创 C语言函数栈

C语言的函数栈c语言的中,栈的使用是无处不在的,在函数的调用过程中,函数的调用同样也是离不开栈的,它使用栈来保存信息的。主调函数与被调函数函数栈的调度流程首先我们来了解下主调函数和被调函数: 一个函数调用另外一个函数,调用的函数叫做主调函数,被调用的函数叫做被调函数函数的调用流程;调用函数的过程对栈空间的操作过程,调用函数使用栈空间来保存信息其中过程如下: 1. 建立被调函数的栈空间

2016-12-26 22:15:46 1545 2

原创 C语言中的链接类型:

C语言中的链接类型在上一篇博客中,讲到了C的存储类型,存储类型的关键字是auto,static,extern,和register 而在本篇幅中,同样我们也会用到auto,static,extern,但是本篇幅中的这几个关键字不仅仅将用来修饰变量,同样也可以用来修饰函数,在修饰函数的时候,他们将会有不同的意义,当然也会对其修饰变量会有一个更深的理解什么叫链接属性, 在C语言的编译过程中有一个步骤叫

2016-12-25 23:18:31 1176

原创 C语言变量的存储类型

变量的存储类型“这些都是用来修饰变量的,修饰函数的时候,其可能有不同的含义,请加以区分,后面会针对修饰函数来进行总结” 存储类型 变量 说明 auto 自动变量 局部变量在缺省的情况下会归为自动变量,默认是不会进行初始化,会产生随机值 static 静态变量 在程序执行的时候存在,并且只要整个程序在运行,就可以继续访问该变量,默认是会进行初始化,并且只有一次 e

2016-12-25 21:30:00 807

原创 变量作用域的分类

变量作用域的分类在一个程序中,我们往往会定义很多的变量,形式参数等,但是我们定义这些变量的生命周期,也就是它能在哪些时候被我们所用,它在什么时候会被释放掉等,可能也会在不经意之间产生错误,因为我们的C语言在书写的时候,有时候并不会像java等IDE一样,会提示我们的作用域,会为我们直接在编译前让我们强制的进行转换。作用领域分类:文件作用域函数作用域代码块作用域函数原型作用域文件作用领域:从

2016-12-25 14:56:30 3640

原创 关于指针的浅析---------多级指针,常量指针,指针常量,指向指针常量的常量指针

关于指针的浅析———多级指针,常量指针,指针常量多级指针常量指针指针常量

2016-12-24 23:47:47 795 1

原创 关于指针的浅析---------指针的神奇之处(函数传递参数)

关于指针的浅析,神奇的指针传递往往在其他高级语言中,比如java,.net等中,我们的函数传递参数的时候,都是采用值传递的过程,专业术语叫做:值拷贝,我们传递的参数都不是原来的参数,而是一种拷贝过后的参数,并不会改变原来参数的数值 ,而是在内存的另外一个区域中,做了一个拷贝空间这样的动作,而我们在函数内部同样操作的也就是那一块拷贝过后的数值,但是C语言中的指针,却可以将一个数据的指向,传递进去

2016-12-24 13:57:48 437

原创 关于指针的浅析----------指针的运算

C语言指针运算和函数传参数1:取地址和指针运算符2:指针赋值运算3:数组名概念4:指针的加减运算5:指针比较运算取地址和指针运算符1:取地址运算符: &运算符,返回操作数的内存地址 printf(“%p\n”,&a); 2:指针运算符: * 运算符,也称为间接访问运算符,返回指针指向存储单元的数值;也称为指向运算符号:

2016-12-24 13:42:22 2648

原创 关于指针的浅析---------指针基础部分2,间接访问和直接访问

指针的直接访问和间接访问:直接访问: 直接通过定义的变量来获取变量的数值访问: 通过指针的形式,指向原来变量存储的值,同样也可以进行修改#include<stdio.h>#include<stdlib.h>int main(int argc,char* argv[]){ //定义一个整形变量 int a = 10; //定义一个整形指针,指向变量a

2016-12-22 23:07:01 7226

原创 关于指针的浅析---------指针基础部分1

关于指针的浅析下面我们来认识下指针: 1:首先谈一下指针的作用: a:指针是C语言中广泛应用的数据类型,运用指针编程是C语言最主要的风格之一 b:指针能够用来有效表示复杂的数据结构 c:指针能很方便操作数组字符串 d:指针能用于函数传递参数,减少内存的开销 e:指针能够像汇编一样处理内存地址,从而编写

2016-12-22 22:26:31 574

原创 字符型和字符串型的对比

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-12-21 22:17:02 18332 1

原创 用最简单的数组去实现队列

用数组去实现队列在上一节中我们是用数组去实现了客栈的功能,那么我们在这节中学习如何用数组去实现队列的功能队列是一种先进先出的数据结构(fisrt-in-first-out)队列之允许在后端进行插入操作,在前端进行删除操作。利用数组按下表进行顺序存储,删除,插入元素的特点,可在数组的末尾插入元素,在数组的首部删除元素,这样可以实现用数组实现队列的功能头文件定义的代码:#ifndef __QU

2016-12-20 23:15:27 3769

原创 C用数组来实现栈管理

数据栈:栈是一种先进后出(后进先出)的数据结构,而在C中,栈的使用是无处不在的,很多函数的使用都是基于栈的栈是一种特殊的线性表,只允许在一端进行插入或删除的线性表栈中分类: 栈顶 栈底对栈进行操作: 栈顶指针是控制栈顶元素的 没有数据时:空栈 插入数据时:进栈,入栈,压栈 删除时:出栈,退栈下面为仅仅用数组实现栈部分的代码: 头文件stac

2016-12-19 23:17:43 425

原创 C语言开发必备基础只是------>Linux下C开发技能

工具善其事,必先利其器,关于Linux下C的一些常规名命令的使用,主要是针对gcc和gdb的一些相对比较简单的用法,以及常用的一些vim的命令Linux系统中默认是自带gcc编译器的,当然,默认的版本中自带的编译器的版本也是不尽相同的,这个可以根据gcc -v来具体的查看编译器的版本;C语言开发流程的: 预处理,编译,汇编,链接,运行 gcc -E helloworld.c

2016-12-15 22:01:57 650 1

测试音视频编码的多种音视频格式

这里面的是音视频的多种编码形式的文件,主要用来测试播放器的编解码的能力

2018-07-06

最强软件卸载工具,可以帮你解决一切对注册表等的修改,专门搜索隐藏修改的地方

这是一款能够在你卸载软件的时候,把修改注册表中的元凶全部都查找出来的工具,强力卸载狗皮膏药软件

2018-07-06

source insight4.0的破解版版本

资源是sourceinsight的破解版版本,先安装官方4.0版本,然后替换掉文件夹里面的可执行文件,打开sourceinsight后,导入文件夹内部的license文件

2018-07-06

linux程序设计

个人总结的一些关于linux中的一些常用的函数使用,从文件读写到后面的线程,进程,内存相关的优化等等 个人总结的一些关于linux中的一些常用的函数使用,从文件读写到后面的线程,进程,内存相关的优化等等

2017-09-02

jni中文翻译

jni api中文翻译

2017-07-10

vim_插件.zip

好用的vim插件配置

2017-03-24

How to Write makefile.pdf

深入理解makefile的书写,语法,更好的去书写编译脚本

2017-02-16

SurfaceViewDemo.rar

###Android视频的放大和缩小 这个还是在很久以前的时候写的,当时公司有一个需求,就是需要仿360或者是小蚁的app,做一个视频的放大缩小,当时是搜遍了,搜到的都是关于图片的放大缩小等,无奈之下,就自己去研究了一下,布局啊,自定义控件啊,手势啊,话说好久都没有做过纯上层的开发,现在做的智能家居一块的产品,更多的是倾向于底层着一块的实现,现在趁还没有怎么忘记,就把当时写的东西粘出来分享出来吧,希望能给大家啊一点小的帮助; 主要涉及到的东西就是滑动的算法,onLayout的使用,android系统手势的操作,自定义控件的开发等。 也写了好久了:不赘述,直接上代码:

2017-01-09

单例模式.zip

确保某一个类只有一个实例,并且自行实例化并且向整个系统提供这个实例

2017-01-07

aidl回调与传参

###Android的跨进程通信---------aidl 做android也有一段时间了,一直没有在博客中去做过这样的总结,刚好这段时间学习开始总结点东西,想着一些简单的问题就不在上面总结了,而之前一些写的都是关于C一方面的总结,几乎看不到Android相关的,今天在这也就给大家分享一下,一个简单的跨进程通信的案例,aidl 其实Android的IPC机制最初应该是引用自Linux中的Ipc概念吧。做过Linux开发的人可能对这个IPC相对来说更加的清晰,什么是FIFO,PIPO管道啊,操作共享内存区域啊等等,都是源自Linux的 最近刚好在做一个跨进程通信用aidl进行重构优化的项目,所以对这一块可能比之前对aidl的了解又更深一步了吧。以前只是单纯的绑定,基本上没有用到server和Client之间的回调,以及也没有用到过于复杂对象的序列化。

2017-01-07

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除