借你一秒

沉心静气,平常心,做好小事方成大事。

stub函数

stub 函数,叫它桩函数,存根函数都可以,用一个桩函数替换一些接口函数,用于测试当前函数的特性。譬如说,要测试一个函数 f()void f(){var = g(...);}f()函数中调用了函数 g(),但是在测试f()的时候g()函数可能还没有写出来这时可以写一个g()的存根(stub)函数,...

2015-11-17 15:06:58

阅读数 4906

评论数 0

二级指针作为函数参数申请内存

0:声明:这篇文章转自林锐的《高质量的C/C++编程指南》,如果想看电子版文档,请去下载【去下载】1:如果函数的参数是一个指针,不要指望用该指针去申请动态内存。示例7-4-1 中,Test 函数的语句 GetMemory(str, 200)并没有使 str 获得期望的内存,str 依旧是 NULL...

2015-11-04 22:19:56

阅读数 3171

评论数 0

数组的深入理解之p=&(b+1)[5]

#include int main() { char *p; char b[10]={1,2,3,4,5,6,7,8,9,10}; p=&(b+1)[5]; printf("%d",*p); }结果是7解析:对一个数组来说,a[n] = a + n 是个恒等...

2015-10-09 17:31:04

阅读数 1231

评论数 1

switch中的break控制

#include using namespace std; int main() { int i=10; switch(i){ case 9:i+=1; case 10:i+=1; case 11:i+=1; default:i+=1; } cout<<i<&...

2015-10-07 19:31:38

阅读数 1102

评论数 0

浅析嵌入式C优化技巧

嵌入式C语言优化小技巧1 概述 嵌入式系统是指完成一种或几种特定功能的计算机系统,具有自动化程度高,响应速度快等优点,目前已广泛应用于消费电子,工业控制等领域.嵌入式系统受其使用的硬件以及运行环境的限制,非常注重代码的时间和空间效率,因此选择一种合适的开发语言十分重要.目前,在嵌入式系统开发中可使...

2015-07-26 20:34:26

阅读数 3059

评论数 6

浅谈C语言嵌入式系统编程注意事项

C语言嵌入式系统编程注意事项之背景篇 本文的讨论主要围绕以通用处理器为中心的协议处理模块进行,因为它更多地牵涉到具体的C语言编程技巧  不同于一般形式的软件编程,嵌入式系统编程建立在特定的硬件平台上,势必要求其编程语言具备较强的硬件直接操作能力。无疑,汇编语言具备这样的特质。但是,归因于汇编语言开...

2015-07-26 00:39:50

阅读数 3647

评论数 0

浅析VS2010反汇编

第一篇1. 如何进行反汇编在调试的环境下,我们可以很方便地通过反汇编窗口查看程序生成的反汇编信息。如下图所示。记得中断程序的运行,不然看不到反汇编的指令看一个简单的程序及其生成的汇编指令#include #include const long Lenth=5060000/5; int main()...

2015-07-25 21:53:11

阅读数 6898

评论数 1

浅析函数调用栈

1. 预备知识:函数调用大家都不陌生,调用者向被调用者传递一些参数,然后执行被调用者的代码,最后被调用者向调用者返回结果,还有大家比较熟悉的一句话,就是函数调用是在栈上发生的,那么在计算机内部到底是如何实现的呢? 对于程序,编译器会对其分配一段内存,在逻辑上可以分为代码段,数据段,堆,栈代码段:保...

2015-07-25 15:47:30

阅读数 1615

评论数 3

全面解析《嵌入式程序员应该知道的16个问题》

文章为转载文章,写的很好,和大家分享下,原文连接如下:全面解析《嵌入式程序员应该知道的16个问题》----Sailor_forever分析整理,sailing_9806@163.comhttp://blog.csdn.net/sailor_8318/archive/2008/03/25/22150...

2015-07-24 23:58:21

阅读数 2503

评论数 6

QueryPerformanceFrequency用法--Windows高精度定时计数

在多核心或多处理器的计算机上,特别是在支持CPU频率动态调整的计算机上,windows系统下的QueryPerformanceFrequency()获取HPET(如果存在)的频率,而QueryPerformanceCounter()获取HPET(如果存在高精度事件定时器(High Precisio...

2015-07-17 22:22:48

阅读数 4214

评论数 0

C中参数个数可变的函数

一、什么是可变参数 我们在C语言编程中有时会遇到一些参数个数可变的函数,例如printf()函数,其函数原型为: int printf( const char* format, ...); 它除了有一个参数format固定以外,后面跟的参数的个数和类型是可变的(用三个点"…"...

2015-07-16 10:39:38

阅读数 1368

评论数 2

单精度浮点数按存储格式转为整数的程序

/////////////////// #include //----------------- union int_char { unsigned char ch[4]; float i; }; void out_put(union int_char x)//x86是小端对其...

2015-06-01 21:26:42

阅读数 1867

评论数 0

数组越界导致死循环

一个变量作为函数参数按值传入,但是函数调用完之后,变量的值竟然改变了,不知所以然。原来是函数里面有个地址越界问题,导致变量的值被改变了,有点不可思议吧!比如,下面这个程序,就由于数组下标越界导致死循环: #include int main() { int i; int a[5];...

2015-05-05 16:21:50

阅读数 828

评论数 0

堆 和 栈的 区别(经典)

此文章虽然是面向C/C++程序员写得,但是对咱们Java程序员还是很有帮助的。  堆和栈的区别  一、预备知识—程序的内存分配  一个由C/C++编译的程序占用的内存分为以下几个部分  1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其  操作...

2015-02-07 10:00:38

阅读数 752

评论数 0

C/C++中的宏

.C/C++中宏总结C程序的源代码中可包括各种编译指令,这些指令称为预处理命令。虽然它们实际上不是C语言的一部分,但却扩展了C程  序设计的环境。本节将介绍如何应用预处理程序和注释简化程序开发过程,并提高程序的可读性。  ANSI标准定义的C语言预处理程序包括下列命令:  #de...

2014-10-13 22:15:23

阅读数 894

评论数 0

float与double的范围和精度

1. 范围   float和double的范围是由指数的位数来决定的。   float的指数位有8位,而double的指数位有11位,分布如下:   float:   1bit(符号位) 8bits(指数位) 23bits(尾数位)   double:   1bit(符号位) 11bits(指数位...

2014-10-13 21:31:44

阅读数 1248

评论数 0

版本控制工具VSS使用介绍

什么是版本控制? 1.怎样对研发项目进行整体管理   2.项目开发小组的成员之间如何以一种有效的机制进行协调   3.如何进行对小组成员各自承担的子项目的统一管理   4.如何对研发小组各成员所作的修改进行统一汇总   5.如何保留修改的轨迹,以便撤销错误的改...

2014-10-11 21:51:45

阅读数 1610

评论数 0

浮点数二进制表示

在讨论浮点数之前,先看一下整数在计算机内部是怎样表示的。   int num=9; 上面这条命令,声明了一个整数变量,类型为int,值为9(二进制写法为1001)。普通的32位计算机,用4个字节表示int变量,所以9就被保存为00000000 00000000 00000000 0...

2014-10-10 19:23:15

阅读数 1580

评论数 0

C/C++中移位实现乘除法运算

用移位实现乘除法运算     a=a*4;     b=b/4; 可以改为:     a=a     b=b>>2; 说明: 除2 = 右移1位               乘2 = 左移1位 除4 = 右移2位               乘4...

2014-10-10 17:36:26

阅读数 3231

评论数 0

ASCII码表

ASCII码大致可以分作三部分組成。 第一部分:ASCII非打印控制字符表 ASCII表上的数字0–31分配给了控制字符,用于控制像打印机等一些外围设备。例如,12代表换页/新页功能。此命令指示打印机跳到下一页的开头。(参详ASCII码表中0-31) 第二部分:ASCII...

2014-10-10 16:44:30

阅读数 911

评论数 0

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