自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

转载 单链表 之c代码

我们知道数据结构就是数据及其相互关系,包括逻辑结构和物理结构。单链表的逻辑结构是一种一对一的线性关系,物理结构是利用节点把数据结合起来,在计算机中体现这种一对一的数据关系。单链表节点包括包含数据本身信息的数据域和体现数据一对一关系的指针域。因为单链表只有一个指向后一节点的单一指针域next 所以单链表只能从前往后遍历,而不能从后向前遍历,这就意味着一旦单链表的某一节点丢失 ,后面所有的数据信息

2015-08-18 23:58:30 540

转载 Linux 线程操作函数总结

线程操作函数总结1、线程创建函数int pthread_create(pthread_t *restrict tidp, const pthread_attr_t *restrict attr, void *(*start_rtn)(void), void *restrict arg); 返回值:若是成功建立线程返回0,否则返回错误的编号 形 参: t

2015-08-18 23:49:44 2813

转载 Linux 线程属性函数总结

1、初始化一个线程对象的属性int pthread_attr_init(pthread_attr_t *attr); 返回值:若是成功返回0,否则返回错误的编号 形 参: attr 指向一个线程属性的指针 说 明:Posix线程中的线程属性pthread_attr_t主要包括scope属性、detach属性、堆栈地址、堆栈大小、优先

2015-08-18 23:47:43 515

转载 C语言常用宏定义

01: 防止一个头文件被重复包含#ifndef COMDEF_H#define COMDEF_H//头文件内容#endif02: 重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。typedef  unsigned char      boolean;     /* Boolean value type. */typedef 

2015-08-18 23:46:09 571

转载 【C语言】关于宏定义中#和##符号的使用和宏定义展开问题

有一道经典的C语言问题,关于宏定义中#和##符号的使用和宏定义展开问题程序如下:[cpp] view plaincopy#include   #define f(a,b) a##b  #define g(a)   #a  #define h(a) g(a)     int main()  {        

2015-08-18 23:44:11 866

转载 Linux 线程同步的三种方法

线程的最大特点是资源的共享性,但资源共享中的同步问题是多线程编程的难点。linux下提供了多种方式来处理线程同步,最常用的是互斥锁、条件变量和信号量。一、互斥锁(mutex)通过锁机制实现线程间的同步。初始化锁。在Linux下,线程的互斥量数据类型是pthread_mutex_t。在使用前,要对它进行初始化。静态分配:pthread_mutex_t mutex = PTHR

2015-08-18 23:40:54 423

转载 Linux知识点

1) Linux中主要有哪几种内核锁?2) Linux中的用户模式和内核模式是什么含意?3) 怎样申请大块内核内存?4) 用户进程间通信主要哪几种方式?5) 通过伙伴系统申请内核内存的函数有哪些?6) 通过slab分配器申请内核内存的函数有?7) Linux的内核空间和用户空间是如何划分的(以32位系统为例)?8) vmalloc()申请的内存有什么特点?9) 用户

2015-08-18 23:39:11 401

转载 linux c编程 多线程(初级)

进程简单的说就是把一段代码复制成多份,并让他们同时执行。进程间通信是为了让他们有序的运行线程简单的说就是让多个函数同时执行,线程间通信是为了让他们有序的运行编译线程程序时会警告说线程函数找不到 pthread 库不是 Linux 系统默认的库,连接时需要使用静态库 libpthread.a,所以在使用pthread_create()创建线程,以及调用

2015-08-18 23:37:04 550

转载 常用的linux内核双向链表API介绍

linux link list结构图如下:内核双向链表的在linux内核中的位置:/include/linux/list.h使用双向链表的过程,主要过程包括创建包含struct link_head结构的结构体(item),建立链表头,向链表中添加item(自定义数据结构,双向链表数据单元),删除链表节点,遍历链表,判空等。1、建立自定义链表数据结构

2015-08-08 23:35:56 1126

转载 vim配置及插件安装管理(超级详细)

1写在前面 Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重要啊, 估计很多人就是卡在这个门槛上了, "工欲善其事, 必先利其器"嘛, 我想如果有一个很好用的IDE, 那些Linux牛人也会欢迎的. 这都是劳动人民的美好愿望罢了

2015-03-20 00:25:27 1695

转载 去除桌面快捷方式的小箭头

开始,运行,输入cmd /k reg delete "HKEY_CLASSES_ROOT\lnkfile" /v IsShortcut /f & taskkill /f /im explorer.exe & start explorer.exe点击确定就好了

2013-07-29 20:53:52 575

转载 怎样安装Ubuntu操作系统

Ubuntu 是一个启动速度超快、界面友好、安全性好的开源操作系统,它由全球顶尖开源软件专家开发,适用于桌面电脑、笔记本电脑、服务器以及上网本等,并且它可以永久免费使用。如果你厌倦了Windows,如果你想体验当今世界上用户量增长最快的Linux操作系统,不妨跟着这个教程来为你的电脑添加一个Ubuntu。(放心,你的Windows系统不会受到任何影响,安装完成后,你可以自由的选择进入哪一个操作系统

2013-07-26 21:18:19 708

转载 八皇后问题

八皇后问题是一个以国际象棋为背景的问题:如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上。一共有92种答案。c代码实现如下:[cpp] view plaincopyprint?#include      #define SIZE 8     s

2013-05-18 15:01:06 704

转载 《c和指针》笔记--宏插入到字符串常量

方法一:[cpp] view plaincopyprint?#include      #define PRINT(FORMAT,VALUE) \          printf("the value is "FORMAT"\n",VALUE);    int main(void){          int x = 6;          PRINT("%d"

2013-05-18 14:58:32 1123

转载 在一个字符串中找到第一个只出现一次的字符

题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。  分析:这道题是2006年google的一道笔试题。 [cpp] view plaincopyprint?/*   Name:    Copyright:    Author:    Date: 15-06-11 12:05   Description: :在一个字符串中找到第

2013-05-18 14:52:46 590

转载 清晰磁盘结构

一块新磁盘,需要将它分区、格式化,然后再安装上操作系统才可以使用。格式化是指系统为了达到随机存取磁盘数据的目的,需要在盘的磁道上规划出磁道 和扇区,每个扇区以引导标记和扇区标记作为扇区的起始,然后才是扇区的内容,后面还有校验标记。格式化后,磁盘被分为面、磁道、扇区和簇。一个面对应一个 磁头,每个面由若干个磁道组成,每个磁道又被分成若干个扇区。物理相邻的若干个扇区组成一个簇。操作系统读写磁盘的基本单

2012-10-09 10:29:54 554

转载 内核驱动中常见的miscdevice、platform_device、platform_driver

最近在看驱动模型,是越看越糊涂,以前接触比较多的都是一些字符驱动,对字符驱动的框架有一定的了解。后来因为想在驱动中实现设备文件的创建,又了解了一下,sysfs文件系统和udev设备文件系统,必然就涉及到了驱动模型。可是发现驱动模型和以前接触的字符驱动没什么联系。比如,以前写字符驱动,主要的内容就是实现file_operations结构体里的函数,然后就是申请设备号,注册字符设备,根本就没有涉及

2012-09-28 15:22:07 1269 1

转载 linux终端快捷键

linux终端快捷键常用: 复制为ctrl-shift-c粘贴为ctrl-shift-vtab=补全ctrl+a=开始位置ctrl+e=最后位置ctrl+k=删除此处至末尾所有内容ctrl+u= 删除此处至开始所有内容Ctrl-L -刷新屏幕Ctrl-C -杀死当前任务 较完整: 窗口操作:Shift+Ctrl+T:新建标签页

2012-09-28 09:55:18 815

转载 kmalloc

在设备驱动程序中动态开辟内存,不是用malloc,而是kmalloc,或者用get_free_pages直接申请页。释放内存用的是kfree,或free_pages.   对于提供了MMU(存储管理器,辅助操作系统进行内存管理,提供虚实地址转换等硬件支持)的处理器而言,Linux提供了复杂的存储管理系统,使得进程所能访问的内存达到4GB。  进程的4GB内存空间被人为的分为两个部分

2012-09-26 10:35:08 518

转载 进程上下文、中断上下文

进程上下文和中断上下文是操作系统中很重要的两个概念,这两个概念在操作系统课程中不断被提及,是最经常接触、看上去很懂但又说不清楚到底怎么回事。造成这种局面的原因,可能是原来接触到的操作系统课程的教学总停留在一种浅层次的理论层面上,没有深入去研究。处理器总处于以下状态中的一种:1、内核态,运行于进程上下文,内核代表进程运行于内核空间;2、内核态,运行于中断上下文,内核代表硬

2012-09-25 16:21:12 487

转载 vim 编辑器

【转】vim 编辑器2011-12-16 19:11转载自 北风北的猪最终编辑 北风北的猪1. vim基本用法:模式,光标移动,查找替换,复制粘贴删除2. 配置:显示和编辑样式,配置文件3. vim用法: 多行注释,多文件,多窗格编辑,保存会话4. 浏览代码:ctags,Taglist,NERD_tree,cscope5. 编译并修改

2012-09-25 16:15:27 1086

转载 Linux C语言内联汇编的使用

本文档的Copyleft归rosetta所有,使用GPL发布,可以自由拷贝、转载,转载时请保持文档的完整性。参考资料:《Linux内核完全剖析》,《新版汇编语言程序设计》,《Linux C编程一站式学习》    最近要改个C语言算法的关键部分用汇编语言实现,Linux里嵌入汇编基本使用AT&T汇编,比如Linux系统的启动部分用的就是AT&T汇编 。以前学过AT&T汇编,但学过一段时间

2012-09-18 10:23:27 902

原创 华清远见ARM A8 Uboot流程

1.A电源,B USB,C串口将电源,USB,串口连接电脑2.将拨码开关的4拨到另一端3.安装USB驱动(压缩包里)4.打开dnw_v0.60c.exe,点击上面Configuration->Options ,结果如下。将Baud Rate调为115200,通常COM Port设置为COM 1,将Download Address改为0x27e00000 其中CO

2012-09-06 20:44:27 4055 2

转载 linux 下sqlite的 C编程之sqlite3_get_table

说明:通过sqlite3_get_table查询得到的结果,其结构是:第一行是列名,随后的行才是值。遍历的方式和二维数组相同。#include #include #include #include #include "test.h"int main(int argc, char **argv){        sqlite3 *db;        char

2012-09-03 19:54:13 23435

转载 Ubuntu .deb包安装方法

Ubuntu软件包格式为deb,安装方法如下:    sudo  dpkg  -i  package.debdpkg的详细使用方法,网上有很多,下面简单列了几个:dpkg -i package.deb安装包dpkg -r package删除包dpkg -P package删除包(包括配置文件)dpkg -L package

2012-08-28 17:08:47 659

空空如也

空空如也

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

TA关注的人

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