或许你会回来
2009-8-12 13:47:32 阅读(63) 评论(0)
DRAM SRAM SDRAM 说明精典完整版
2009-07-02 21:04
| 作者:jesse 来源:armjishu.com email:armjishu.com@163.com 问题1:什么是DRAM、SRAM、SDRAM? 答:名词解释如下 DRAM--------动态随即存取器,需要不断的刷新,才能保存数据,而且是行列地址复用的,许多都有页模式 SRAM--------静态的随机存储器,加电情况下,不需要刷新,数据不会丢失,而且一般不是行列地址复用的 SDRAM-------同步的DRAM,即数据的读写需要时钟来同步 问题2:为什么DRAM要刷新,SRAM则不需要? |
2009-7-27 11:40:02 阅读(19) 评论(0)
2009-7-24 11:56:24 阅读(9) 评论(0)
在 GNU C 中,宏可以接受可变数目的参数,就象函数一样,例如:
#define pr_debug(fmt,arg...) \
printk(KERN_DEBUG fmt,##arg)
用可变参数宏(variadic macros)传递可变参数表
你可能很熟悉在函数中使用可变参数表,如:
void printf(const char* format, …);
直到最近,可变参数表还是只能应用在真正的函数中,不能使用在宏中。
C99编译器标准终于改变了这种局面,它允许你可以定义可变参数宏(variadic macros),这样你就可以使用拥有可以变化的参数表的宏。可变参数宏就像下面这个样子:
#define debug(…) printf(__VA_ARGS__)
2009-7-24 11:28:55 阅读(7) 评论(0)
assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行,原型定义:
#include <assert.h>
void assert( int expr
assert的作用是现计算表达式 expr
然后通过调用 abort 来终止程序运行。
请看下面的程序清单badptr.c:
#include <stdio.h>
#include <assert.h>
#include <stdlib.h>
int main( void )
{
FILE *fp;
2009-7-24 11:04:29 阅读(16) 评论(0)
(一)inline函数(摘自C++ Primer的第三版)
在函数声明或定义中函数返回类型前加上关键字inline即把min()指定为内联。
inline int min(int first, int secend) {/****/};
inline函数对编译器而言必须是可见的,以便它能够在调用点内展开该函数。与非inline
函数不同的是,inline函数必须在调用该函数的每个文本文件中定义。当然,对于同一程序
的不同文件,如果inline函数出现的话,其定义必须相同。对于由两个文件compute.C和draw.C构成的程序来说,程序员不能定义这样的min()函数,它在compute.C中指一件事情,