自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 .NET之道

.NET平台的主要优点:对已有代码具有完全的互操作性: 支持多种编程语言: 所有支持.NET的语言共享的公共运行时引擎: 语言集成: 全面的基础类库: 简化的部署模型:.NET平台构造块:(CLR\CTS\CLS) 从程序元的角度,.NET可以理解为一个运行库环境和一个全面的基础类库。 CLR:公共语言运行库 为了定位、加载和管理.NET...

2019-08-18 22:18:21 119

原创 makefiel制作

1.autoscan首先运行autoscan命令,它会在给定目录及其子目录树中检查源文件,若没有给出目录,就在当前目录及其子目录树中进行检查。它会搜索源文件以寻找一般的移植性问题并创建一个文件件“configure.scan”,该文件就是接下来autoconf要用到的“configure.in”原型。2.autoconfconfigure.in是au

2016-11-30 08:49:46 318

原创 linux文件操作(一)

1.linux文件结构     它们为操作系统服务和设备提供了一个简单而统一的接口。在linux中,一切都是文件。大数情况下你只需要使用五个基本的函数-open close read write ioctl。目录也是文件,正常情况下所有用户都必须用上层的opendir/readdir接口来读取目录,不需要了解特定系统中目录实现的具体细节。2.目录     文件,除了本身

2016-10-04 17:07:24 396

原创 shell详解九

1.调试脚本程序脚本程序的调试通常都很容易,但并没有特定的辅助工具。当出现错误时,shell一般都会打印出包含错误的行的行号。如果这个错误并不是非常明显,我们可以添加一些额外的echo语句来显示变量的内容。因为脚本程序是解释执行的,所以在脚本程序的修改和重试过程中没有编译方面的额外开支。命令行选项 set选项 说明sh -n set -o noexec set -n 只检查语

2016-10-04 12:52:46 281

原创 shell详解八

1.算术扩展1.expr命令,它允许对简单的算术命令进行处理,但这个命令执行起来相当慢。使用$(())中能够更有效地完成简单的算术运算。这里与x=$(...)命令不同,两对圆括号用于算术替换,而我们之前见到的一对圆括号用于命令的执行和获取输出。2.参数扩展foo=fredecho $foo但当我们在变量后附加的字符时就会遇到问题。例如处理名为1_tmp和2_

2016-10-04 12:21:20 456

原创 shell详解七

1.使用grep命令在文件中搜索字符串。事实上,一种非常常见的用法是在使用find命令时,将grep作为传递给-exec的一条命令。grep命令使用一个选项,一个匹配的模式和要搜索的文件:grep [options] PATTERN [FILES]如果没有提供文件名,则grep命令将搜索标准输入。-C 输出匹配行的数目,而不是输出匹配的行-E 启用扩展表达式-h 压

2016-10-03 22:31:59 292

原创 shell详解 六

1.unset命令unset命令的作用是从环境中删除变量或函数。这个命令不能删除shell本身定义的只读变量#/bin/shfoo="Hello World"echo foounset fooecho foo2.find命令它的功能是查找文件,它及其有用,它不仅仅是因为它有选项,测试和动作类型的参数,也由于其中一个参数的处理结果可以影响后续参数的

2016-10-03 21:53:25 276

原创 shell详解五

1.export命令export命令将作为它参数的变量导出到子shell中,并使之在shell中有效。1)导出变量#!/bin/shecho "$foo"echo "$bar"这个是export2#!/bin/shfoo="The first meta-syntactic variable"export bar="The second meta-

2016-10-03 21:13:05 318

原创 shell详解四

1.命令shell脚本程序内部执行两类命令,一类是可以在命令提示符中执行的普通命令,也成为外部命令。一类是我们提到的内置命令,也称内部命令。1)break命令用这个命令在控制条件未满足之前,跳出for,while,或until循环。可以用break命令提供一个额外的数值参数来表明所要跳出的循环成熟,在默认情况下,break只跳出一层循环。#!/bin/shrm

2016-10-03 19:56:31 438

原创 shell详解三

1.命令列表    有时,我们想要将几条命令连接成一个序列。    if  [  -f  this_file ] ; then            if  [  -f  that_file ] ; then                     if [  -f  the_othe_file ] ; then                             

2016-10-03 19:05:51 234

原创 shell详解二

1.控制结构在下面的小节中,各语句的语法中的statements表示(when、while或until)测试天剑满足时,将要执行的一系列命令。1.if语句if      conditionthenstatementselsestatementsfi      2.elif语句#!/bin/shecho "Is it morning?Ple

2016-10-03 18:35:13 463

原创 shell 详解

1.变量:字符串、数字、环境和参数。2.条件:shell中的布尔值。3.程序控制:if、elif、for、while、untill、case。4.命令列表:5.函数。6.shell内置命令。7.获取命令的执行结果。8.here文档。     $salutation=Hello     $echo $salutation在shell中,

2016-09-30 16:54:45 407

原创 好博客,值得分享。

http://blog.csdn.net/BBZZ2/article/category/6137536  好博客。

2016-08-12 13:34:57 254

转载 qt QPalette的应用

QPalette类相当于对话框或控件的调色板,它管理着控件或窗体的所有颜色信息,每个窗体或控件都包含一个QPalette对象,在显示时按照它的QPalette对象中对各部分各状态下的颜色的描述来进行绘制。QPalette类有两个基本的概念,一个是ColorGroup,另一个是ColorRole。void QPalette::setColor ( ColorRole role, co

2016-07-11 16:09:34 394

原创 DXF文件解析

1.首先下载dxflib库,这个库是c++写的。2.下载地址:晚上给出网址。我自己的网盘。http://www.ribbonsoft.com/en/dxflib-downloads

2016-07-05 17:16:24 2848

原创 linux文件解压的参数

.tar.gz 格式解压为 tar -zxvf    xx.tar.gz.tar.bz2 格式解压为 tar -jxvf    xx.tar.bz2

2016-07-05 16:56:54 285

原创 通用树结构的链式存储

#ifndef _LINKLIST_H_#define _LINKLIST_H_typedef void LinkList;typedef struct _tag_LinkListNode LinkListNode;struct _tag_LinkListNode{ LinkListNode* next; }; LinkList* LinkList_Create()

2016-06-29 23:27:00 490

原创 一个周完成dxf文件的解析

项目: 做一个模块 ,用qt完成对dxf文件 的 解析。时间:一个周,解析绝大部分cad绘制的二维图形。

2016-06-29 10:46:12 4844 3

原创 用栈来表示队列

#ifndef _LINKLIST_H_#define _LINKLIST_H_typedef void LinkList;typedef struct _tag_LinkListNode LinkListNode;struct _tag_LinkListNode{ LinkListNode* next;};LinkList* LinkList_Create();vo

2016-06-28 23:37:55 388

原创 每天三千行代码。

现在基础基本可以了,开始实际写工程代码了。 大家监督,每天三千行代码。不能打折扣哈。

2016-06-28 13:05:03 1194

原创 线性队列的改变

#ifndef _SEQQUEUE_H#define _SEQQUEUE_Htypedef void SeqQueue;SeqQueue* SeqQueue_Create(int capacity);void SeqQueue_Destroy(SeqQueue* queue);void SeqQueue_Clear(SeqQueue* queue);int SeqQueu

2016-06-27 16:08:46 241

原创 链式存储队列

#ifndef _LINKLIST_H_#define _LINKLIST_H_typedef void LinkList;typedef struct _tag_LinkListNode LinkListNode;struct _tag_LinkListNode{ LinkListNode* next;};LinkList* LinkList_Create();vo

2016-06-25 23:07:16 295

原创 队列 线性队列

#ifndef _SEQLIST_H_#define _SEQLIST_H_typedef void SeqList;typedef void SeqListNode;SeqList* SeqList_Create(int capacity);void SeqList_Destroy(SeqList* list);void SeqList_Clear(SeqList* list

2016-06-25 17:51:12 480

原创 uboot移植准备工作三

2.5.11.2 )1. TTB就是translation table base 转换表基地址。首先要明白什么是TT(translation table转换表),TTB其实就是转换表的基地址。2. 转换表是建立一套虚拟地址映射的关键。转换表分2部分,表索引和表项。表索引对应虚拟地址,表项对应物理地址。一对表索引和表项构成一个转换表单元,能够对一个内存块进行虚拟地址转换。(映射中基本规定中规

2016-06-24 09:24:23 626

原创 uboot移植准备四

第二部分 start_armboot(void)函数简介1. 在uboot/lib_arm/board.c中 从327-798。这不是全部,因为里面还调用了别的函数。2. 为什么这么长的函数,怎么不分成两三个函数?主要因为这个函数整个构成了uboot启动的第二阶段。3. 宏观分析:uboot第二阶段应该做什么? 概况来讲,uboot第一阶段主要是初始化soc内部的一些部件(譬如,看门狗

2016-06-24 09:21:48 2971

原创 uboot移植准备工作二

第一部分2.3.1uboot配置编译实践1)源头的源代码时uboot官网下载的。这个下载的源代码可能没有你当前使用的开发板的移植,甚至找不到当前开发板使用的SoC对应的移植版本。2)SoC厂商在退出一款SoC后,厂商的工程师会去uboot官网下载一个uboot,根据自己Soc进行第一步移植,移植的目标是厂商推出的开发板。(譬如三星的S5PV210芯片厂商出的开发板就叫SMDKV210)

2016-06-24 09:03:51 3290

原创 栈的链式 结构实现

1.这个继承了线性链表的特性。#ifndef _LINKLIST_H_#define _LINKLIST_H_typedef void LinkList;typedef struct _tag_LinkListNode LinkListNode;struct _tag_LinkListNode{ LinkListNode* next;};LinkList* L

2016-06-23 14:46:51 305

原创 栈 顺序结构的实现

1  实现原理,复用了线性表的顺序结构。  栈最大特点:后进先出。    具体代码如下:#ifndef _SEQLIST_H_#define _SEQLIST_H_typedef void SeqList;typedef void SeqListNode;SeqList* SeqList_Create(int capacity);void SeqList_Des

2016-06-23 09:49:22 376

原创 双向循环链表

#ifndef _DLINKLIST_H_#define _DLINKLIST_H_typedef void DLinkList;typedef struct _tag_DLinkListNode DLinkListNode;struct _tag_DLinkListNode{ DLinkListNode* next; DLinkListNode* pre; };

2016-06-22 20:27:54 183

原创 循环链表

1.游标的定义 。定义一个当前指针。2    获取当前游标指向的数据元素。3   将游标重置指向链表中的第一个数据元素 4  将游标移动指向到链表中的下一个数据元素。5  直接指定删除链表中的某个数据元素。#ifndef _CIRCLELIST_H_#define _CIRCLELIST_H_typedef void CircleList;typede

2016-06-22 14:46:58 195

原创 链表的测试程序

#include #include #include "LinkList.h"struct Value{ LinklistNode header; int v;};int main(int argc , char *argv[]){ LinkList* list = LinkList_Create(); int i = 0;

2016-06-21 18:32:25 282

原创 链表LinkList.c实现

#include "LinkList.h"#include #include typedef struct _tag_LinkList{ LinkListNode header; int length;}TLinkList;LinkList* LinkList_Create(){ TLinkList *sList = (TLinkList*)mall

2016-06-21 18:06:35 499

原创 链式存储

#ifndef _LINKLIST_H#define _LINKLIST_Htypedef void LinkList;typedef struct _tag_LinkListNode LinkListNode;struct _tag_LinkListNode { LinkListNode* next;};LinkList* LinkList_Creat();void

2016-06-21 14:08:42 236

原创 链式存储的LinkList.h代码

1. LinkList.h#ifndef _LINKLIST_H#define _LINKLIST_Htypedef void LinkList;typedef struct _tag_LinkListNode LinkListNode;struct _tag_LinkListNode { LinkListNode* next;};LinkList* LinkList_Creat();void L

2016-06-21 14:03:36 2085

转载 qt编译时, make:警告:检测时钟错误。您的创建可能是不完整的。

分析原因可能是:服务器上的文件最后修改时间比当前时钟要晚解决办法:用touch 命令把源程序的时间戳改一下find . -type f -exec touch {} \;

2016-06-14 19:45:31 2586

原创 uboot启动流程

第一阶段:          硬件设备初始化。 加载uboot第二阶段代码到RAM空间。 设置好栈。         跳转到第二阶段代码入口。第二阶段:初始化本阶段使用的硬件设备。检测系统内存映射。将内核从Flash读取到RAM中。为内核设置启动参数。调用内核。第一阶段 :1.设置异常向量表。     2.CPU进入SVC模式。 

2016-05-11 22:46:50 347

原创 container_of()宏

在学习Linux驱动的过程中,遇到一个宏叫做container_of。该宏定义在include/linux/kernel.h中,首先来贴出它的代码:/** * container_of - cast a member of a structure out to the containing structure * @ptr: the pointer to the me

2016-05-06 21:37:41 222

转载 每天遇到的问题

Unable to find the ncurses libraries的解决办法 转载▼我们在更新CentOS或者Ubuntu的内核时,执行make menuconfig可能看如这样的错误:*** Unable to find the ncurses libraries or the*** required header files.*** ‘ma

2016-04-27 16:28:25 306

原创 uboot移植之前的工作

1.1计算机系统的主要部件:计算机系统是有cpu来做核心进行运行的系统。典型的计算机系统有:pc机,嵌入式设备(手机、平板电脑、游戏机),单片机(家用电器)。1.2计算机系统组件部件非常多,不同的计算机系统组成部件也不同。但是所有的计算机系统运行时需要的主要核心部件都是3个东西:cpu+外部存储器(Flash/硬盘) + 内部存储器(DDR SDRAM/SDRAM/SRAM)。1.3pc机

2016-04-23 18:33:08 5180

原创 遇到的问题 cc1: error: unrecognized command line option "-fconserve-stack"

这个是交叉编译器不兼容的问题。    解决办法:找到适合自己的内核版本的交叉编译器,然后放置到/usr/local/arm  目录下:           然后再  /root/.bashrc  中保存修改的变量路径。        export   PATH=$PATH:/usr/local/arm/....

2016-04-21 10:55:30 1914

空空如也

空空如也

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

TA关注的人

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