Jimmy's Blog

C语言
C/C++

(原创)Framebuffer测试程序

  上一篇,我们看了Framebuffer驱动的内容,同时framebuffer提供了一些借口,可以让我们比较容易的操作Framebuffer,所以就有了这篇,写一个简单的程序来获取Framebuffer的信息,同时对Framebuffer进行刷写。这个程序适合在Linux系列的系统上测试,例如在Ubuntu 14.04系统上,将代码保存为fb_test.c,然后通过下面的指令编译gcc fb_test.c -o fb_test -std=c99,alt+ctrl+f1到tty1,然后执行fb_…

2018-05-24 0条评论 3017点热度 2人点赞 jimmychen 阅读全文
C/C++

(译文)POSIX多线程编程

本文翻译自:https://computing.llnl.gov/tutorials/pthreads/ 1. 基本概念 在共享内存的多处理器架构体系中,线程可以用来实现并行性。在历史上,硬件供应商已经实现了自己的专有版本的线程模型,这使得可移植性成为了软件开发者的关注点。对于UNIX系统,一个标准的C语言线程编程接口由IEEE POSIX 1003.1C标准定义了。坚持这个标准的实现被称为POSIX线程或者Pthreads。 本教程会先介绍使用Pthread的概念、动机以及设计注意事项。然后会介绍Pthreads…

2018-01-15 0条评论 3209点热度 1人点赞 jimmychen 阅读全文
Android

(原创)Android智能指针

智能指针的目标   在使用指针的时候容易出现的问题不外乎下面几个。首先,指针在使用之前都必须初始化,这个还算容易解决,在创建指针变量的时候同步初始化就好了;第二个问题就是经常忘记delete,就我的经验来看,这个还是很容易忘记的,在一个大型程序中要是有那么几个地方忘记执行delete,长久来看系统内存肯定会被消耗完;第三个问题就是就算记得delete,但是也不是说delete就delete的,要是还有别的对象在引用这个对象,然后被delete了,那么在其他地方访问这个对象的时候程序肯定会奔溃的。…

2018-01-06 0条评论 2125点热度 1人点赞 jimmychen 阅读全文
C/C++

C++实现HTTP Get和Post请求

  因为以前用Java写Android的时候感觉Java已经封装得很好了,HTTP实现的东西都不是很了解。然后就买了本HTTP入门书籍《图解HTTP》来读,快速读完了,那就用C++实现简单的HTTP Get和Post请求吧。   在编写代码前,还是需要将HTTP Get和Post请求的区别做下说明的,《图解HTTP》这本书毕竟是入门书籍,这两个的区别都没有说得很详细,所以这里借助互联网,参考下W3School对Get和Post方法的总结。 Get和Post请求的区别 在客户机…

2018-01-03 2条评论 6746点热度 2人点赞 jimmychen 阅读全文
C/C++

(整理)sockaddr_in、in_addr、sockaddr区别和Socket编程函数集

sockaddr_in, sockaddr, in_addr区别 网络字节序和主机字节序 大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放;这和我们的阅读习惯一致。 小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地址部分权值低。 网络字节序,UDP/TCP/IP协议规定:把接收到的第一…

2017-12-28 0条评论 1960点热度 0人点赞 jimmychen 阅读全文
C/C++

(原创)重温socket tcp编程

  有一段时间没有写Linux socket程序了,最近重新拾起来吧。 创建socket server/client流程   创建socket无非就是socket--bind--listen--.....这类的一些操作,下面一张图就能很好的概括这些步骤和使用的函数了。 Socket服务端程序 [crayon-62bccccac02a3702587251/] 服务端的程序按照上面的图写下来就好了,其中会遇到一些htons、htonl之类的函数,具体的总结解析可以看后面的整理部分…

2017-12-24 0条评论 1824点热度 1人点赞 jimmychen 阅读全文
C/C++

(转载)C++命名规范

C++命名规范 本文整理转载自:https://www.cnblogs.com/chensheng-zhou/p/5127415.html 因为嫌弃自己之前写程序的时候命名没有一个统一的规则,所以在网上找了一些通用的命名规则,大部分都是引用Google的C++命名规则,所以这里转载一份以作备用,后面就强制自己使用这套命名规则了。 命名约定 最重要的一致性规则是命名管理. 命名风格快速获知名字代表是什么东东: 类型? 变量? 函数? 常量? 宏 ... ? 甚至不需要去查找类型声明. 我们大脑中的模式匹配引擎可以非常…

2017-12-24 0条评论 2432点热度 2人点赞 jimmychen 阅读全文
C/C++

(原创)static关键字的作用

  C++中的static关键字的作用,这里从两个方面来进行解析。一方面是放在变量前面时所产生的作用,另一方面就是放在函数前所产生的作用了。首先从static类型的变量开始。 static修饰的变量   static修饰变量时,表明该变量是一个静态变量,静态变量存储在静态存储区内。静态存储区是内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。它主要存放静态数据、全局数据和常量。 static修饰的全局变量 static修饰局部变量时,就表明这个变量是一个静…

2017-12-24 1条评论 1358点热度 1人点赞 jimmychen 阅读全文
C/C++

(原创+转载)extern关键字的作用

博主注:内容整理自《C++ Primer 第五版》 声明与定义   在讲extern关键字的作用前,需要先了解声明与定义的区别。声明使得名字为程序可知,一个文件如果想使用别处定义的名字则必须包含对这个名字的声明。而定义负责创建与名字关联的实体。变量的声明规定了变量的类型和名字,在这一点上定义与之相同。但是除此之外定义还申请存储空间,也可能会为变量赋一个初始值。   如果想声明一个变量而非定义它,就在变量名前添加关键字extern,而不是显式的初始化变量 [crayon-62b…

2017-12-21 0条评论 1607点热度 3人点赞 jimmychen 阅读全文
再战C Primer Plus

C Primer Plus 第六版 第十五章课后编程练习答案

编程环境Visual Studio 2017 [crayon-62bccccac1f4c878536451/] 此文为博主原创文章,转载请注明出处

2017-10-29 4条评论 3028点热度 1人点赞 jimmychen 阅读全文
123
分类
  • Android / 45篇
  • ART虚拟机 / 7篇
  • Binder / 9篇
  • C/C++ / 10篇
  • JNI编程指南与规范 / 18篇
  • Linux / 12篇
  • SQL数据库 / 10篇
  • SurfaceFlinger / 10篇
  • 再战C Primer Plus / 14篇
  • 再战C++ Primer Plus / 14篇
  • 网络编程 / 4篇
Adsense

COPYRIGHT © 2022 Jimmy's Blog. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang