自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

幸福摩天轮

思考、思考、还是思考....

  • 博客(22)
  • 资源 (19)
  • 收藏
  • 关注

转载 Linux select()函数介绍

1. 简介     select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。     可是使

2015-10-06 13:39:02 375

转载 Linux pipe函数介绍

1. 函数说明pipe(建立管道):1) 头文件 #include2) 定义函数: int pipe(int filedes[2]);3) 函数说明: pipe()会建立管道,并将文件描述词由参数filedes数组返回。              filedes[0]为管道里的读取端              filedes[1]则为管道的写入端。4) 返回值: 

2015-10-06 13:13:35 506

原创 UNIX环境高级编程 apue.h编译文件配置

最近在学习UNIX环境高级编程,看到第一个关于ls的demo,看到头文件#include "apue.h",就打定程序肯定是编译不过了,而是上下求索,将所需的文件和库配置了一番,第一个demo成功编译通过。其基本的配置步骤如下:    (1):首先找源代码 网址:http://www.apuebook.com/, 我用的是第二版(2005版本),点进去下载sourcecode即可。下载压缩文件

2013-07-29 18:00:27 1100

转载 #define中的 #与##

在#define中,标准只定义了#和##两种操作。#用来把参数转换成字符串,##则用来连接两个前后两个参数,把它们变成一个字符串。 例子:#include #define paster(n) printf("token"#n"=%d\n",token##n)int main(){ int token9=10; paster(9); getchar();

2013-06-14 16:07:59 532

转载 extern与static

在讨论全局变量之前我们先要明白几个基本的概念:1. 编译单元(模块):    在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LINK ERROR), 因为它不像编译错误那样可以给出你程序错误的具体位置,你常常对这种错误感到懊恼,但是如果你经常使用gcc,makefile等工具在linux或者嵌 入式下做开发工作的话,那么你可能非常

2013-06-14 13:10:17 585

转载 this指针基础介绍

转自:http://www.cnblogs.com/uniqueliu/archive/2011/09/24/2189545.html=================this指针的由来====================一个学生可以有多本书一样,而这些书都是属于这个同学的;同理,如果有很多个同学在一起,那么为了确定他们的书不要拿混淆了,最好的办法我想应该就是每个同学都在自己的书上写上

2013-04-08 10:08:46 747

原创 指针数组、数组指针联系和区别

所谓指针数就是存储指针的数组,数组指针即指向数组的指针,前者是数组结构,后者是指针结构。 (1)int a[10]  存储int类型的数组,其容量为10 (2)int *a[10]  存储指向int类型指针的数组,其容量为10,注意“[]”的优先级高于“*”,因此a优先跟[]结合,形成数组。 (3)int (*a)[10] 指向存储10个int类型的数组的指针,注意,“()”优先级高于

2013-04-07 21:12:37 549

转载 cdecl、stdcall、fastcall函数调用约定区别

论函数调用约定  在C语言中,假设我们有这样的一个函数:    int function(int a,int b)    调用时只要用result = function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保

2013-04-07 15:05:38 538

转载 C/C++定义全局变量/常量几种方法的区别

在讨论全局变量之前我们先要明白几个基本的概念:1. 编译单元(模块):    在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LINK ERROR), 因为它不像编译错误那样可以给出你程序错误的具体位置,你常常对这种错误感到懊恼,但是如果你经常使用gcc,makefile等工具在linux或者嵌入式下做开发工作的话,那么你可能非常的

2013-03-31 16:49:19 467

原创 浅谈C++中const成员和非const成员的联系和区别

C++中我们经常会碰到const数据成员和const成员函数,他们在使用方面跟非const数据成员和非const成员函数有很大的区别,这里根据自己的经验,谈一下自己看法,如有错误,请大家指教:      (1):在赋值方面,const数据成员只能采用初始化列表方式,而非数据成员可以采用初始化列表和构造函数体内赋值两种方式。         class Test          {

2013-03-30 15:38:21 778

原创 Android中C++调用Java实现

1:需求分析        在Android中利用NDK进行编程的时候,一般的都是Java层通过JNI调用C++的相关接口,而在有的应用中,需要通过底层C++调用Java层来实现相关功能。比如在进行OMX硬解码画图的时候,需要在底层不断发送请求给Java层,让其不断刷新GlSurfaceView。 2:java层接口   a://弹出消息对话框  public stat

2013-03-25 21:56:38 7074

原创 Ubuntu下OpenGL编程基础解析

本文重点介绍在ubuntu下怎么进行OpenGL基础编程,其主要步骤如下:1:首先当然需要安装一些基本的编译库和OpenGL库文件,主要安装以下两个就ok了    基本编译库:build-essential     sudo apt-get install  build-essential    OpenGL工具库:freeglut3-dev    sudo apt-get i

2012-11-24 17:27:57 930

转载 YUV格式解析

YUV是指亮度参量和色度参量分开表示的像素格式,而这样分开的好处就是不但可以避免相互干扰,还可以降低色度的采样率而不会对图像质量影响太大。YUV是一个比较笼统地说法,针对它的具体排列方式,可以分为很多种具体的格式。转载一篇对yuv格式解释的比较清楚地文章,也可以直接参考微软的那篇文章。对于YUV格式,比较原始的讲解是MPEG-2 VIDEO部分的解释,当然后来微软有一个比较经典的解释,中文的大

2012-07-03 13:51:46 392

原创 valgrind工具使用解析

valgrind是一款Linux下内存调试工具,它可以检测程序中存在的内存泄露等问题,下面就介绍怎么使用valgrind工具来检测内存泄露等问题。1:获取valgrind工具     这个直接去valgrind官网就可以免费下载到最新版本的valgrind,http://valgrind.org/,下载的压缩版本格式是vargrind-3.7.0.tar.bz2,采用tar jxvf  v

2012-07-01 18:14:54 690

转载 linux socket 详解

头文件:sys/socket.h相关结构体:struct sockaddr{    unsigned short sa_family;   //地址族    char sa_data[14];   //14字节协议地址};struct sockaddr_in{    short int sin_family;   //地址族    unsigned sh

2012-06-14 15:24:25 500

原创 基于Android NDK开发实践案例解析

本案例主要介绍如何利用NDK工具在Android上进行C/C++相关开发,通过生成的JNI接口,编写C/C++函数,编译生成so库,并调用so库,在Android应用层上实现int型加法操作,字符串显示操作和往/sdcard中文件yao.txt写入数据操作。       1:案例分析       在进行Android本地项目开发时,我们需要用到自己的底层函数(.c或.cpp文件)和相关so

2012-06-09 17:49:54 847

原创 Makefile文件编写详解

在Linux下编写小程序时,相信大家都知道怎么做,直接编辑源文件(一般是.c和.cpp),然后采用gcc/g++来编译源文件,生成执行文件,这样一个简单的应用程序就可以编写完成。但是如果对于一个复杂应用程序的时候(包含很多源文件和头文件),如果继续采用“编辑-编译-测试”的方式,则需要操作很多次,且只要其中某一个文件改动,其关联到的文件都要重新编译生成。因此,如果继续采用单步编译的方式,则会浪费很

2012-06-09 17:20:56 2176

原创 关于#ifdef编译选项的使用

最近在coding的时候经常需要对以前的版本反复修改测试,其中要对一大段代码需要重用和不用,很简单的做法当然是直接采用/*..*/注释掉,不过这样很麻烦(因为以后对版本进行修改测试时,有可能又需要用到这段注释代码)。而且有的时候采用/*..*.可能导致注释嵌套,不好判断。 而采用#ifdef的话,可以省去很多事情。      (1):#if 0的使用                 代码:

2012-06-01 17:32:49 2770

转载 linux压缩(解压缩)命令详解

一.tar命令         tar可以为文件和目录创建档案。利用tar,用户可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar 最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案,如软盘。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文 件或将几个文件组合成为一个文件以便于网络传输是非常有用的。Linux

2012-05-23 17:03:37 304

原创 Linux/Ubuntu 基本命令解析

最近在做Android 组件开发,经常需要在Ubuntu下编译库文件,因此要用到一些基本Linux命令,这里把一些基本的Linux命令列出,方便查询和交流:1:man 查询某个具体命令的用法      eg: man ls (按q键或Ctrl+c 可以退出此命令)2:printenv 查看和设置环境变量(配置环境变量的时候经常用到)      eg:   printenv   查看

2012-05-23 16:59:00 590

原创 Ubuntu下怎么搭载Android NDK开发环境详解

具体步骤如下:    (1):下载NDK工具,这个可以去官网下载http://developer.android.com/sdk/ndk/index.html 选择Linux版本      由于官网提供的都是最新版本,可能会有不兼容的问题出现,这里推荐另一个版本ndk-r4-crystax,下载地址:http://www.crystax.net/zh/android/ndk/4#dow

2012-05-09 17:53:07 1165

原创 Ubuntu下怎么设置Root超级账户密码

最近在做Android的NDK开发,经常要在Ubuntu下编辑so库文件,发现了一个问题,就是有的时候需要用Root超级账才能进行一些操作,而在我们安装Ubuntu的时候总是会创建自己的账户,而没有对Root账户进行设定,因此第一次想进入root账户的时候,系统提示输入密码,这里因为起初就没有设定密码,所以也就不存在输入神马密码,那要想进入root账户怎么办呢? 其实比较简单,具体步骤如下:

2012-05-08 19:29:13 3326

《 Pro+Android编程指南》

《 Pro+Android编程指南》学习android应用开发必备书籍,值得拥有!

2015-07-25

Ubuntu入门教程

《Ubuntu入门教程》学习Ubuntu操作系统的入门基础教程,值得拥有!

2015-07-25

Shell脚本学习指南

《Shell脚本学习指南》学些shell脚本的必备书籍,值得拥有!

2015-07-25

Linux内核源代码情景分析

Linux内核源代码情景分析、学习Linux内核源码必备书籍,值得拥有!

2015-07-25

Android技术内幕.系统卷

《Android技术内幕.系统卷》掌握Android系统的必备书籍,值得拥有!

2015-07-25

UNIX环境高级编程

[UNIX环境高级编程].(美国)W.Richard.Stevens.清晰版一本学习UNIX系统的必备宝典,值得拥有!

2015-07-25

Linux程序设计第四版

《Linux程序设计第四版》一本学习Linux必备经典书籍,值得拥有!

2015-07-25

C++设计模式

C++深入学习必备书籍,让你深入了解C++的设计模式,值得拥有!

2015-07-25

C、C++笔试题集锦

面试C/C++开发工程师必备宝典,涵盖公司面试C、C++面试的基础内容,值得拥有!

2015-07-25

Objective-c基础教程

Objective-c基础教程,开发IOS应用程序必备教程,值得拥有!

2015-07-25

MFC+WINDOWS+程序设计(第2版)

本书是一本关于使用MFC进行32位Windows应用程序编程,以访问操作系统的基本特性和服务的书籍,对学习在MFC下编写Windows应用程序有很大帮助。

2010-12-13

Effective C++ 第2版

一本很经典的C++学习书籍,适合有C++基础的人学习。

2010-09-10

空空如也

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

TA关注的人

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