自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

杨正的专栏

嵌入式软件开发

  • 博客(17)
  • 资源 (2)
  • 收藏
  • 关注

原创 c 中一些指令

# 空指令,无任何效果 #include 包含一个源代码文件 #define 定义宏 #undef 取消已定义的宏 #if 如果给定条件为真,则编译下面代码 #ifdef 如果宏已经定义,则编译下面代码 #ifndef 如果宏没有定义,则编译下面代码 #elif 如果前面的#if给定条件不为真,当前条件为真,则编译下面代码 #endif 结束一个#if……#else

2013-08-28 16:19:53 511

原创 结构体对齐

关于C语言中的结构体对齐。   (1)什么是字节对齐  一个变量占用 n 个字节,则该变量的起始地址必须能够被 n 整除,即: 存放起始地址 % n = 0, 对于结构体而言,这个 n 取其成员种的数据类型占空间的值最大的那个。  (2)为什么要字节对齐  内存空间是按照字节来划分的,从理论上说对内存空间的访问可以从任何地址开始,但是在实际上不同架构的CPU为了提高访问内存的速度,

2013-08-26 17:02:35 504

转载 在C语言中各种类型数据所占字节数

和机器字长及编译器有关系:所以,int,long int,short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的): 1 sizeof(short int)<=sizeof(int) 2 sizeof(int)<=sizeof(long int) 3 short int至少应为16位(2字节) 4 long int至少应为32位。 unsigned 是

2013-08-26 17:00:09 3454

转载 #define中的UL

c语言 #define 中的ULU和L是 整数文字量的后缀修饰,用于显示指明整数文字量的类型为unsigned int(U)和long int(L)。   类似的还有浮点数文字量的后缀修饰F或f,用于指明文字量表示的是一个float,而不是默认情况下的double。经常发现一些C语言中通过#define 定义的数据中包含有UL符号,不理解为什么,把他去掉发现也没有什么区别。现在才明

2013-08-23 16:22:58 3895 1

原创 一个参数既可以是volatile又可以是const吗?

volatile修饰符告诉complier变量值可以以任何不被程序明确指明的方式改变,最常见的例子就是外部端口的值,它的变化可以不用程序内的任何赋值语句就有可能改变的,这种变量就可以用volatile来修饰,complier不会优化掉它。const修饰的变量在程序里面是不能改变的,但是可以被程序外的东西修改,就象上面说的外部端口的值,如果仅仅使用const,有可能complier会优化掉这

2013-08-23 15:34:04 3895

转载 笔试面试题目

1.new、delete、malloc、free关系delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数。malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之

2013-08-22 15:45:32 1110

转载 数组结构体

数组定义:数组是有序的并且具有相同类型的数据的集合。一维数组1、一般形式:类型说明符 数组名[常量表达式];例如: int a[10]; 元素为a[0]----a[9].2、常量表达式中不允许包含变量,可以包含常量或符号常量。3、数组元素下标可以是任何整型常量、整型变量或任何整型表达式。4、可以对数组元素赋值,数组元素

2013-08-16 19:12:10 1436

转载 结构体 数组名与指针的区别

A、数组名不是指针。B、数组名 是 不是指针的指针。数组名本质:  (1)数组名的内涵在于其指代实体是一种数据结构,这种数据结构就是数组;  (2)数组名的外延在于其可以转换为指向其指代实体的指针,而且是一个指针常量;  (3)指向数组的指针则是另外一种变量类型(在WIN32平台下,长度为4),仅仅意味着数组的存放地址!解析:A ch

2013-08-15 15:47:09 1954

转载 一套完整的makefile模板

应用系统的目录结构如下: 代码:~/bin   可执行程序目录 ~/etc   配置文件目录 ~/inc   头文件目录 ~/lib   函数库文件目录 ~/log   日志文件目录 ~/src   源程序文件目录 ~/src/lib   函数库源程序目录 ~/src/lib/LIB_1   函数库libLIB_1源程序目录 ~/src/APP_A  

2013-08-14 16:19:09 791

转载 进程的状态转换

四种进程间的状态转换:进程的状态转换图1.就绪–>执行 2.执行–>就绪 3.执行–>等待  4.等待–>就绪一、进程的三种基本状态进程在运行中不断地改变其运行状态。通常,一个运行进程必须具有以下三种基本状态。就绪(Ready)状态当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称为就绪状态。

2013-08-14 14:23:30 1086

原创 alarm函数详解

alarm函数的解析网上有很多博客,但是我觉得都写得很模糊,现在我自己运行了程序,终于搞明白了。原型如下:#include unsigned int alarm(unsigned int seconds);/*指定秒数*/alarm函数是设置一个计时器, 在计时器超时的时候, 产生SIGALRM信号.alarm也称为闹钟函数,一个进程只能有一个闹钟时间。如果

2013-08-09 16:00:20 9486

转载 请不要做一个浮躁的嵌入式工程师

1. 不要看到别人的回复,第一句话就说:给个代码吧!你应该想想为什么。当你自己想出来再参考别人的提示,你就知道自己和别人思路的差异。 2. 初学者请不要看太多的书那会误人子弟的。先找一本好书系统的学习。很多人用了很久都是只对部分功能熟悉而已,不系统还是不够的。 3. 看帮助。不要因为很难,而自己又是初学者所以就不看;帮助永远是最好的参考手册,虽然帮助的文字有时候很难看懂,或不够直观

2013-08-04 21:23:17 786

原创 Mplayer的移植

日期: 2013.8.4  作者:杨正 1209758756yz2012ww@gmail.com>前言MPlayer最初的名字叫做"MPlayer - The Movie Player for Linux",不过后来开发者们简称其为"MPlayer - The Movie Player",原因是MPlayer已经不仅可以用于Linux而可以在所有平台上运行.MPlayer是一款开源

2013-08-04 21:21:10 1493

转载 C 语言中强制类型转换

C语言中,任何一个变量都必须占有一个地址,而这个地址空间内的0-1代码就是这个变量的值。不同的数据类型占有的空间大小不一,但是他们都必须有个地址,而这个地址就是硬件访问的依据,而名字只是提供给程序员的一种记住这个地址的方便一点的方法。但是,不同的变量在机器中都是0-1代码,所以,我们不能简单的通过检查一个值的位来判断它的类型。例如,定义如下:int a;float b;double

2013-08-02 16:37:01 911

原创 sprintf函数的用法

1、该函数包含在stdio.h的头文件中。#include 2、sprintf与printf函数的区别sprintf和平时我们常用的printf函数的功能很相似。sprintf函数打印到字符串中,而printf函数打印输出到屏幕上。sprintf函数在我们完成其他数据类型转换成字符串类型的操作中应用广泛。3、sprintf函数的格式:int sp

2013-08-02 15:18:06 1271

原创 vim 的高级应用

一、ctags应用ctags(Generate tag files for source code)是vim下方便代码阅读的工具。尽管ctags也可以支持其它编辑器,但是它正式支持的只有VIM。并且VIM中已经默认安装了Ctags,它可以帮助程序员很容易地浏览源代码。Linux下VIM简单易用,大家只要看看VIM自带的vitutor,大约只要20分钟就能掌握VIM的用法。但是对于Linux下的

2013-08-02 14:39:11 1041

转载 漫谈C语言及如何学习C语言

好文章啊,值得一看!!!!! http://sunxiunan.com/?p=1661 云风最近写了一篇博客《C语言的前世今生》。作为长期使用C语言开发网络游戏服务器的程序员,云风是有理由写这样一篇文字,不过还是感觉谈的不够深入,C语言在业界使用的现状没有怎么描写,有些意犹未尽。在这里想比较系统的谈谈个人对C语言学习方式方法的理解。分别按照书籍、实验环境搭建、网络资源来分别

2013-08-01 15:58:57 1382 1

浅谈gui框架

描述gui框架,认识gui,是gui初学者难得一见的好文档,文档主要讲解了整个gui的设计流程,以及一些思路

2014-08-25

空空如也

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

TA关注的人

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