编程
quanguoheme
这个作者很懒,什么都没留下…
展开
-
c++和java总异常是如何用c语言实现的
rt: 使用中的setjmp和longjmp(j,r)他们2个函数的原理如下: 1.setjmp(j)设置“jump”点,用正确的程序上下文填充jmp_buf对象j。这个上下文包括程序存放位置、栈和框架指针,其它重要的寄存器和内存数据。当初始化完jump的上下文,setjmp()返回0值。 2. 以后调用longjmp(j,r)的效果就是一个非局部的goto或“长跳转”到由j描原创 2012-04-05 15:26:24 · 662 阅读 · 0 评论 -
工作中碰见的各种奇怪的c语言
----------------------1---------------------------------------------#include#define __clk_get(clk) ({ 1; })void main(){ char cl; cl=1; printf("ddddd\n"); if (cl && !__clk_get(cl)) { printf原创 2013-12-27 17:12:10 · 611 阅读 · 0 评论 -
好c源码 [已删除]
1:关于结构体初始化struct nand_ecclayout { uint32_t eccbytes; uint32_t eccpos[128]; uint32_t oobavail; struct nand_oobfree oobfree[MTD_MAX_OOBFREE_ENTRIES];};static struct nand_ecclayout nand原创 2013-11-08 14:16:55 · 1119 阅读 · 0 评论 -
Linux链表关键词 和 原理
----------------------------------------关键词 --------------------------------------------------------------------------------------------------------//1,定义,并分配一个链表头.struct stdio_dev { int flags;原创 2013-12-12 14:31:24 · 832 阅读 · 0 评论 -
使用svn下载源码 svn使用错误笔记
svn使用错误笔记我在Linux上装了svn后,总是无法从服务器上checkout源码下来,总是报错:hkbdm@ubuntu:~$ svn checkout https://rd_h_02:8443/svn/qq_2_0/svn: OPTIONS of 'https://rd_h_02:8443/svn/qq_2_0': Could not resolve hostname原创 2013-06-21 16:31:08 · 1682 阅读 · 0 评论 -
ucos中OSMemXX分析-----指向指针的的指针--强制转换
下面8行代码的含义是什么:#define nblks 10#define blksize 20INT8U *pblk; void **plink;INT8U addr[200]; plink = (void **)addr;/* Create linked list of free memory blocks */ pblk = (INT8U *)((INT3原创 2012-05-14 15:38:48 · 866 阅读 · 0 评论 -
容易犯的c语言错误。
if((count&0xff)==0) { debug("______ \r\n" ); debug("ddd %x " ,count); }上面的语句 ,串口信息总是不能被打印,我怀疑是电脑串口问题,结果重启还是一样的,换了程序又可以 搞了1个小时 ,发现是上面的判断语句有问题.原创 2013-01-21 17:48:22 · 558 阅读 · 0 评论 -
c99和c98的差异
enum{STATE_0, STATE_1, STATE_2, STATE_N, NUM_STATES};typedef void (*p_func_t)(void);p_func_t jumptable[NUM_STATES] = { [STATE_1] = 0, [STATE_0] = 0, [STATE_2] = 0,原创 2013-01-18 14:54:41 · 5408 阅读 · 0 评论 -
关于汉字映射到led屏幕问题
如图有下面这个2个数组,BUFFER[2][16],raw[16][2], 把这个2个数组按位展开的话,都是一个16×16大小方正,通过设置BUFFER中不同的数据,BUFFER,按位展开的图形也不一样,现在希望使raw按位展开的图形和BUFFER一样。原创 2013-01-24 16:07:16 · 651 阅读 · 0 评论 -
c++语言
void C_DM9000::EDeviceRegisterIoSpace(void){ NIC_DEVICE_OBJECT::EDeviceRegisterIoSpace();原创 2012-05-10 11:28:04 · 447 阅读 · 0 评论 -
双向链表 , 添加 , 得到上层结构体地址
//已知链表地址,怎么得到链表所属的结构体的地址.pOpenHead = CONTAINING_RECORD( pEntry, HW_OPEN_INFO, llist);//链表类型为llist,所属上层结构体为HW_OPEN_INFO,pEntry就是已分配内存的链表的地址/*#define CONTAINING_RECORD(address, type, field) ((ty原创 2012-05-02 14:39:54 · 830 阅读 · 0 评论 -
c程序员,必须记口诀.
unsigned char temp,temp2; temp=192; temp2=temp/100;这个时候temp2为1,当temp为有符号类型的时候,temp2为0,因为192等于0xc0化成有符合数就是1100 0000, 有符号类型数据 比较运算 ,是当作无符号类型运算的原创 2012-03-29 16:02:09 · 1427 阅读 · 0 评论