自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (99)
  • 收藏
  • 关注

原创 C语言中可变参数的使用

<br />1、在函数中一般都是固定的参数调用,为了实现可变参数调用,需要用到stdarg.h库中声明的几个宏定义。<br />2、定义<br />     在VC++6.0的include有一个stdarg.h头文件,有如下几个宏定义:<br />     #define _INTSIZEOF(n)   ((sizeof(n)+sizeof(int)-1)&~(sizeof(int) - 1) ) <br />     #define va_start(ap,v) ( ap = (va_list)&v +

2011-04-28 15:47:00 905

原创 VxWorks应用程序调试环境的建立

<br />     Vxworks的应用程序一方面可以和内核集成在一起进行调试,另外一个方面也可以将应用程序和内核分开来进行调试,当应用程序无误后再集成到内核中。下面将详细介绍第二种调试方法,这种方法调试最方便。使用这种方法可以不用每次都将应用程序写好,然后和内核一起编译下载到目标机中,只需动态的向目标机中加载应用程序的.o文件即可以对其进行调试,加快了开发的速度。<br />      要想将应用程序和内核分开来进行开发调试,首先必须有一个可以稳定运行VxWorks内核,这里可以使用以前做好了的BSP来

2011-04-27 20:40:00 5323

转载 Visual C++(VC++6.0)编译器常用选项设置

Visual C++(VC++6.0)编译器常用选项设置<br />http://www.52bingcheng.com/2009/10/14/visual_cvc60/<br />编译参数的设置。<br />(一 )主要通过IDE的菜单项Project->Settings->C/C++页来完成。<br />我们可以看到这一页的最下面Project Options中的内容,一般如下:<br />/nologo /MDd /W3 /Gm /GX /ZI /Od /D “WIN32″ /D “_DEBUG” /

2011-04-11 17:36:00 2195

转载 VC++6.0 中calling convention 的__cdecl __fastcall与 __stdcall设置项

<br />          __cdecl __fastcall与 __stdcall __cdecl __fastcall与 __stdcall 调用约定:<br />          __cdecl __fastcall与 __stdcall,三者都是调用约定(Calling convention),它决定以下内容:<br />   1)函数参数的压栈顺序,<br />   2)由调用者还是被调用者把参数弹出栈,<br />   3)以及产生函数修饰名的方法。 <br />         1、_

2011-04-11 17:20:00 2100

转载 使用Warning Level 4洁净编译应用程序

<br />     <br />     VC开发环境使用Warning level控制警告信息,在VC环境的Project/Setting/C/C++中设置。其中Level 4是最严格的检查级别,Warnings as errors将警告信息当作错误处理。在编译时如果有warning信息输出,则不会影响应用程序的生成,如果有error信息输<br />出则不能生成应用程序。产生warning的语句大多时候不会影响程序的正确执行,但有时候warning语句隐含着错误。将Warning level<br /

2011-04-11 15:15:00 3238

转载 关于MAP文件的使用(转贴)

关于MAP文件的使用(转贴)<br />在看《深入理解计算机系统》的时候总会看到MAP文件,一直不懂,今天看到一片相关的文章,收录下来,大家一起看看吧。毕竟有些时候我们的IDE提示的信息不够明白,使用MAP文件是一个调试的好帮手。<br /><br />仅通过崩溃地址找出源代码的出错行<br /><br />作为程序员,我们平时最担心见到的事情是什么?是内存泄漏?是界面不好看?……错啦!我相信我的看法是不会有人反对的——那就是,程序发生了崩溃!<br /><br />“该程序执行了非法操作,即将关闭。请与你

2011-04-08 15:59:00 895

原创 VC++6.0 中DEBUG模式下如何开启函数内联模式

                                                                        VC++6.0 中DEBUG模式下如何开启函数内联      C++中,为了减少函数频繁调用时所带来的时空开销,提供了一种称为内置函数的功能,内置函数即是将掉用的函数的代码嵌入到调用处,内联函数需要使用inline关键字声明,为了检测内联函数是否替换成功,即在调用处是否用了函数体来代替函数调用,需要在调试模式下查看汇编代码。      下面是一个简单的例子: 编译连

2011-04-07 12:45:00 3116 1

转载 VC++ 6.0 编译器编译期存储器分配模型 (内存布局)

                                                             VC ++ 6.0  编译器编译期存储器分配模型(内存布局)一、内存区域的划分      一个由C/C++编译的程序占用的内存分为以下几个部分:     1)、栈区(Stack):由编译器(Compiler)自动分配释放,存放函数的参数值,局部变的值等。其操作方式类似于数据结构中的栈。     2)、堆区(Heap):一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它

2011-04-02 21:00:00 3594

转载 关于内存中栈和堆的区别[转]

关于内存中栈和堆的区别[转]<br />1、内存分配方面:<br />    堆:一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式是类似于链表。可能用到的关键字如下:new、malloc、delete、free等等。<br />    栈:由编译器(Compiler)自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。<br />2、申请方式方面:<br />    堆:需要程序员自己申请,并指明大小。在c中malloc

2011-04-02 15:20:00 752

MS PROJECT培训资料-上半部分-V1.3.pptx

PROJECT项目管理工具软件培训资料,主要讲解了使用PROJECT项目管理过程中的基础资料软件,可供没有基础知识的初学者了解基本的知识。

2020-03-24

vcruntime140.dll

WIN10 64位操作系统 vcruntime140.dll,解决WIN10下某些应用不能正常打开的问题。

2020-02-21

msvcp140.dll

WIN10 64位操作系统 msvcp140.dll 动态库,解决WIN10下某些应用软件无法使用的问题。

2020-02-21

HEXCMP 二进制比较工具

HEXCMP 二进制比较工具 HEXCMP 二进制比较工具

2012-06-02

MTK10A 编译环境的搭建

MTK10A 编译环境的搭建

2012-03-08

GSM通讯原理

GSM通讯原理

2012-01-16

AD9.4.0.20159补丁文件

AD9.4.0.20159补丁文件 对ALTIUM DESIGNER的破解文件

2011-12-09

ALTIUM DESIGNER 9.0教程.pdf

1、Altium历史 2、DXP系统平台介绍 3、AltiumDesgner设计环境 4、Altium免费资源 5、从PROTEL到AltiumDesigner 6、原理图编辑基础 7、原理图绘图工具以及电气连接 8、创建第一张原理图 9、全局编辑 10、完成设计项目 11、项目编译及验证 12、集成库概念介绍

2011-12-09

Altium+designer+summer+09 license

这个license.alf可用与 8.0.0.15895版本,本人用了没任何问题,但是局域网中用了两台电脑就会出问题,但是如果在启动时断网就没问题了~

2011-12-09

美新加速度传感器MT6202中文使用说明附测试程序

美新加速度传感器MT6202中文使用说明附测试程序

2011-12-02

美新加速度传感器测试程序MX6202

美新加速度传感器测试程序

2011-12-02

义隆单片机EM78P173N C语言使用例程

EM78P173N C语言头文件 EM78P173.H EM78P173N的TCC、WDT、INT、WAKEUP、LVD、TBRD、HEAD、IAR等模块的应用实例及其C语言例程! 非常适合入门学习义隆单片机编程!

2011-11-11

义隆单片机学习入门比较好的资料

义隆单片机学习入门比较好的资料 序.doc 位单片机系列一览表.doc 目录.doc 第一章.doc 第二章EM78X56.doc 第三章 EM78447硬件结构.doc 第四章 指令系统.doc 第五章 EM78系列单片机程序设计基础 第六章 开发系统.doc 第七章 PIC TO EMC,doc emc 8位单片机系列一览表11.dot

2011-11-11

MTK 6252 META工具

MTK 6252 META工具

2011-11-09

FlashTools MTK 6252 10A

FlashTools MTK 6252 10A

2011-11-09

CACHER MTK 10A 6252

CACHER MTK 10A 6252 ,很难求的资源

2011-11-09

MTK MAUI工程支持的AT指令大全

MTK MAUI工程支持的AT指令大全

2011-11-08

MTK SOCKET API 文档 --- 各种函数介绍、参数解析

MTK SOCKET API 文档 --- 各种函数介绍、参数解析,是入门MTK SOCKET编程的好资料!

2011-10-11

MTK SOCKET编程ARI官方文档

MTK SOCKET编程ARI官方文档:详细介绍了SOCKET编程中所用到的各种API函数

2011-10-11

MTK平台任务创建详解

MTK平台任务创建详解 MTK平台任务创建详解 MTK平台任务创建详解

2011-09-18

GSM通信协议标准中文板

GSM通信协议标准中文板 GSM通信协议标准中文板 GSM通信协议标准中文板 做移动开发的应该会有用处

2011-07-23

SIM-ME接口规范+GSM11.11.pdf

SIM-ME接口规范+GSM11.11.pdf SIM-ME接口规范+GSM11.11.pdf

2011-07-23

WORD20007 中将文件转换为PDF的插件

WORD20007 中将文件转换为PDF的插 WORD20007 中将文件转换为PDF的插件

2011-07-23

可充电电池:原理,隐患,及安全充电方法

本文概要介绍了电池充电方式和现代电池技术,以使读者能更好的了解便携设备中使用的电池。本文对镍镉(NiCd)电池,镍氢(NiMH)电池和锂离子(Li+)电池的化学性质进行了描述,还介绍了一款单节锂离子和锂聚合物电池保护芯片。

2011-07-16

JLINK_V8电路原理图

JLINK_V8电路原理图 JLINK_V8电路原理图JLINK_V8电路原理图JLINK_V8电路原理图

2011-06-30

Unicode 到 GB2312编码的映射 很难求的资源

Unicode 到 GB2312编码的映射,根据Unicode编码中的汉字的顺序,从0x4e00开始,建立于GB2312的映射

2011-03-03

LINUX命令大全 修改版

LINUX命令大全 修改版,详细介绍了LINUX系统中的命令,其目录如下: 文件传输 备份压缩 文件管理 磁盘维护 系统设置 文档编辑 网络通讯 电子邮件与新闻组 X WINDOWS SYSTEM 其他

2011-02-24

38个电子信息类专业本科毕业论文

38个电子信息类专业本科毕业论文,论文的经典之作

2011-02-22

国内经典操作系统原理教程

第一章:操作系统概论 第二章:处理机管理 第三章:并发进程 第四章:存储管理 第五章:设备管理 第六章:文件管理 第七章:操作系统安全性 第八章:网络和分布式操作系统

2011-01-04

ICETEK-5100USB2.0A FOR CCS4.0驱动

ICETEK-5100USB2.0A FOR CCS4.0驱动 ICETEK-5100USB V2.0在CCS4.0下的驱动

2010-12-13

C 语言 深 度 剖析

强烈建议大家看一看这本书,pdf格式的,不是影印的,含有目录,看起来特别方便,写的很详细,诙谐幽默. 最冤枉的关键字----sizeof...............................................................................................18 1.5.1,常年被人误认为函数...........................................................................................18 1.5.2,sizeof(int)*p 表示什么意思?........................................................................18 1.4,signed、unsigned 关键字................................................................................................19 1.6,if、else 组合.................................................................................................................... 20 1.6.1,bool 变量与“零值”进行比较...............................................................................20 1.6.2, float 变量与“零值”进行比较.................................................................................21 1.6.3,指针变量与“零值”进行比较...............................................................................21 1.6.4,else 到底与哪个if 配对呢?...............................................................................22 1.6.5,if 语句后面的分号............................................................................................... 23 1.6.6,使用if 语句的其他注意事项.............................................................................. 24 1.7,switch、case 组合........................................................................................................... 24 1.7.1,不要拿青龙偃月刀去削苹果.............................................................................. 24 1.7.2,case 关键字后面的值有什么要求吗?.............................................................. 25 1.7.3,case 语句的排列顺序...........................................................................................25 1.7.4,使用case 语句的其他注意事项..........................................................................27 1.8,do、while、for 关键字................................................................................................... 28 1.8.1,break 与continue 的区别.....................................................................................28 1.8.2,循环语句的注意点...............................................................................................29 1.9,goto 关键字......................................................................................................................30 1.10,void 关键字....................................................................................................................31 1.10.1,void a?............................................................................................................31 1.10,return 关键字................................................................................................................. 34 1.11,const 关键字也许该被替换为readolny....................................................................... 34 1.11.2,节省空间,避免不必要的内存分配,同时提高效率.................................... 35 1.12,最易变的关键字----volatile.......................................................................................... 36 1.13,最会带帽子的关键字----extern.................................................................................... 37 1.14,struct 关键字..................................................................................................................38 1.14.1,空结构体多大?.................................................................................................38 1.14.2,柔性数组.............................................................................................................39 1.14.3,struct 与class 的区别.........................................................................................40 1.15,union 关键字..................................................................................................................40 1.15.1,大小端模式对union 类型数据的影响............................................................. 40 1.15.2,如何用程序确认当前系统的存储模式?........................................................ 41 1.16,enum 关键字..................................................................................................................42 1.16.1, 枚举类型的使用方法..........................................................................................43 1.16.2,枚举与#define 宏的区别....................................................................................43 1.17,伟大的缝纫师----typedef 关键字................................................................................. 44 1.17.1,关于马甲的笑话.................................................................................................44 1.17.2,历史的误会----也许应该是typerename........................................................... 44 1.17.3,typedef 与#define 的区别...................................................................................45 1.17.4,#define a int[10]与typedef int a[10];.............................................................. 46 第二章符号....................................................................................................................................49 2.1,注释符号..........................................................................................................................50 2.1.1,几个似非而是的注释问题...................................................................................50 2.1.2,y = x/*p................................................................................................................. 51 2.1.3,怎样才能写出出色的注释...................................................................................51 2.1.3.1,安息吧,路德维希.凡.贝多芬................................................................. 51 2.1.3.2,windows 大师们用注释讨论天气问题....................................................51 2.1.3.3,出色注释的基本要求............................................................................... 52 2.2,接续符和转义符..............................................................................................................53 2.3,单引号、双引号..............................................................................................................54 2.4,逻辑运算符......................................................................................................................54 2.5,位运算符..........................................................................................................................55 2.5.1,左移和右移...........................................................................................................55 2.5.2,0x01<<2+3 的值为多少?...................................................................................55 2.6,花括号..............................................................................................................................56 2.7,++、--操作符...................................................................................................................56 2.7.1,++i+++i+++i......................................................................................................... 57 2.7.2,贪心法...................................................................................................................57 2.8,2/(-2)的值是多少?.........................................................................................................58 2.9,运算符的优先级..............................................................................................................58 2.9.1, 运算符的优先级表................................................................................................58 2.9.2,一些容易出错的优先级问题.............................................................................. 60 第三章预处理................................................................................................................................61 3.1,宏定义..............................................................................................................................62 3.1.1,数值宏常量...........................................................................................................62 3.1.2,字符串宏常量.......................................................................................................62 3.1.3,用define 宏定义注释符号?.............................................................................. 63 3.1.4,用define 宏定义表达式.......................................................................................63 3.1.5,宏定义中的空格...................................................................................................64 3.1.6,#undef....................................................................................................................64 3.2,条件编译..........................................................................................................................65 3.3,文件包含..........................................................................................................................66 3.4,#error 预处理................................................................................................................... 66 3.5,#line 预处理.....................................................................................................................67 3.6,#pragma 预处理...............................................................................................................67 3.6.8,#pragma pack........................................................................................................ 69 3.6.8.1,为什么会有内存对齐?........................................................................... 70 3.6.8.2,如何避免内存对齐的影响....................................................................... 70 3.7, #运算符..............................................................................................................................72 3.8,##预算符..........................................................................................................................72 第四章指针和数组.........................................................................................................................74 4.1,指针.................................................................................................................................74 4.1.1,指针的内存布局...................................................................................................74 4.1.2,“*”与防盗门的钥匙............................................................................................. 75 4.1.3,int *p = NULL 和*p = NULL 有什么区别?.................................................... 75 4.1.4,如何将数值存储到指定的内存地址.................................................................. 76 4.1.5,编译器的bug?....................................................................................................77 4.1.6,如何达到手中无剑、胸中也无剑的地步.......................................................... 78 4.2,数组.................................................................................................................................78 4.2.1,数组的内存布局...................................................................................................78 4.2.3,数组名a 作为左值和右值的区别.......................................................................79 4.3,指针与数组之间的恩恩怨怨..........................................................................................80 4.3.1,以指针的形式访问和以下标的形式访问.......................................................... 80 4.3.1.1,以指针的形式访问和以下标的形式访问指针....................................... 81 4.3.1.2,以指针的形式访问和以下标的形式访问数组....................................... 81 4.3.2,a 和&a 的区别...................................................................................................... 81 4.3.3,指针和数组的定义与声明...................................................................................83 4.3.3.1,定义为数组,声明为指针....................................................................... 83 4.3.3.2,定义为指针,声明为数组....................................................................... 85 4.3.4,指针和数组的对比...............................................................................................85 4.4,指针数组和数组指针......................................................................................................86 4.4.1,指针数组和数组指针的内存布局...................................................................... 86 4.4.3,再论a 和&a 之间的区别.....................................................................................87 4.4.4,地址的强制转换...................................................................................................88 4.5,多维数组与多级指针......................................................................................................90 4.5.1,二维数组...............................................................................................................91 4.5.1.1,假想中的二维数组布局........................................................................... 91 4.5.1.2,内存与尺子的对比....................................................................................91 4.5.1.3,&p[4][2] - &a[4][2]的值为多少?........................................................... 92 4.5.2,二级指针...............................................................................................................93 4.5.2.1,二级指针的内存布局............................................................................... 93 4.6,数组参数与指针参数......................................................................................................94 4.6.1,一维数组参数.......................................................................................................94 4.6.1.1,能否向函数传递一个数组?................................................................... 94 4.6.1.2,无法向函数传递一个数组....................................................................... 96 4.6.2,一级指针参数.......................................................................................................97 4.6.2.1,能否把指针变量本身传递给一个函数................................................... 97 4.6.2.2,无法把指针变量本身传递给一个函数................................................... 98 4.6.3,二维数组参数与二维指针参数.......................................................................... 99 4.7,函数指针........................................................................................................................100 4.7.1,函数指针的定义.................................................................................................100 4.7.2,函数指针的使用.................................................................................................101 4.7.2.1,函数指针使用的例子............................................................................. 101 4.2.7.2,*(int*)&p ----这是什么?....................................................................... 102 4.7.3,(*(void(*) ())0)()------这是什么?.....................................................................102 4.7.4,函数指针数组.....................................................................................................103 4.7.5,函数指针数组的指针.........................................................................................104 第五章内存管理...........................................................................................................................107 5.1,什么是野指针................................................................................................................107 5.2,栈、堆和静态区............................................................................................................107 5.3,常见的内存错误及对策................................................................................................108 5.3.1,指针没有指向一块合法的内存........................................................................ 108 5.3.1.1,结构体成员指针未初始化..................................................................... 108 5.3.1.2,没有为结构体指针分配足够的内存..................................................... 109 5.3.1.3,函数的入口校验......................................................................................109 5.3.2,为指针分配的内存太小.....................................................................................110 5.3.3,内存分配成功,但并未初始化.........................................................................110 5.3.4,内存越界............................................................................................................. 111 5.3.5,内存泄漏............................................................................................................. 111 5.3.5.1,告老还乡求良田......................................................................................112 5.3.5.2,如何使用malloc 函数.............................................................................112 5.3.5.3,用malloc 函数申请0 字节内存.............................................................113 5.3.5.4,内存释放..................................................................................................113 5.3.5.5,内存释放之后..........................................................................................114 5.3.6,内存已经被释放了,但是继续通过指针来使用............................................ 114 第六章函数.................................................................................................................................. 115 6.1,函数的由来与好处........................................................................................................116 6.2,编码风格........................................................................................................................ 116 6.2,函数设计的一般原则和技巧...........................................................................................121 6.4,函数递归........................................................................................................................123 6.4.1,一个简单但易出错的递归例子........................................................................ 123 6.4.2,不使用任何变量编写strlen 函数......................................................................124 第七章文件结构.........................................................................................................................127 7.1,文件内容的一般规则....................................................................................................127 7.2,文件名命名的规则........................................................................................................130

2010-11-08

GB2312国标汉字编码与UNICODE编码的映射表

GB2312国标汉字编码与UNICODE编码的映射表,C语言的格式,直接可以移植到程序中使用。

2010-10-27

汉字字模点阵数据批量生成工具 suki_v5.0 破解版 消除了生产字库时中间产生的一个十字叉

汉字字模点阵数据批量生成工具 suki_v5.0 破解版 消除了生成字库时中间产生的一个十字叉

2010-10-27

LPC214X工程模板 --- 标准版

LPC214X工程模板 --- 标准版,对LPC214X系列各个寄存器做了详细的描述。

2010-10-26

GPRS 上网时DNS设置

GPRS 上网时DNS设置,SIM300模块中的DNS获取方法

2010-10-09

SIM300 GPRS 和 电脑通讯时 路由器的设置

SIM300 GPRS 和 电脑通讯时 路由器的设置

2010-10-07

LPC2136 IAP使用总结

LPC2136 IAP使用总结,对FLASH进行写操作。

2010-10-05

GPS应用系统常用术语结解释

GPS应用系统常用术语结解释,对GPS定位系统中所用到的常用的术语进行了详细的描述。

2010-09-30

NEMA-0183 详细 解 释

NEMA-0183 详细 解 释,详细描述了NEMA83中GPS数据的格式。

2010-09-30

GSM+07.07+version+7.5.0+Release+1998.pdf

GSM+07.07+version+7.5.0+Release+1998.pdf

2010-09-20

空空如也

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

TA关注的人

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