C老鸟编程技巧总结 (2)

原创 2011年01月12日 20:26:00

 

本文来自http://blog.csdn.net/lijun84 ,引用必须注明出处!

 

5 ,复杂指针的声明


 

规则总结:

1) 去掉变量名就类型 , 去掉一个 *, 就是指向内存单元的类型 .

2) 强调什么将名子和强调的东东括最里层 , 再将其次强调的东西括外面一层 , 最后强调的括最外层 , 类型最后加在外面 :

: int (*i)[2]; 指向 int ()[2] 的指针 ( 强调指针 )

       Int *(i[2]); 类型为 int *() 的数组 ( 强调数组 )

       Void (*pf)(); 指向 void ()() 的函数指针 .

Void (*(pf[2]))();  函数类型为 void ()() 的指针数组 ( 最强调数组 , 所以先括数组 , 其次强调指针 , 所以将它括在外面一层 .

Void (*((*pf)[2]))(); 指向上个函数指针数组的指针 ,( 最强调指针 , 所以将变量明和指针括在最里层 , 其次强调数组 , 所以括在上一层 , 最后又强调指针 , 所以将其括在最外层 .)

 

 

 

 

6. 模拟 UCOS 中的 TASK 切换和邮箱机制 (由于 UCOS 代码比较复杂,自己实现了个模拟的,为了方便所以栈还是弄乱了!)

#define T(a,b) t##a(){ /

              while(1){ /

                     printf(gM(a)); /

                     sM(#b"/n",b); /

                     mS(); /

              } /

       }

 

unsigned int ip=0;

char mb[2][3];

 

char*gM(int p){

       return (mb[p-1]);

}

 

sM(char*m,int p){

       strcpy(mb[p-1],m);

}

 

mS(){

       Sleep(0xFF);

       _asm mov eax,ip

       _asm xchg eax,[ebp+4]

       _asm mov ip,eax

}

 

T(1,2)

T(2,1)

 

main(){

       ip=&t2;

       t1();

}

 

 

7, 泛型宏 (说明代码提取自 Linux 源码)

#define min(x, y) ({                           /

       typeof(x) _min1 = (x);                 /

       typeof(y) _min2 = (y);                 /

       (void) (&_min1 == &_min2);             /

       _min1 < _min2 ? _min1 : _min2; })

相关文章推荐

C老鸟编程技巧总结 (1)

本文来自http://blog.csdn.net/lijun84 ,引用必须注明出处! 本文来自我实践中以及阅读优秀开源项目的技巧手法总结。更多是从设计和代码结构技巧上考虑,希望对大家提供C编程有...
  • lijun84
  • lijun84
  • 2011年01月10日 22:02
  • 2780

程序员老鸟必须要会的5种流程技巧

程序员老鸟必须要会的5种流程技巧       作为编写企业管理系统的程序员,要学会的基本功,不仅仅只限于编程技巧方面,还有很多方方面面的知识,如如何将客户要办理的业务转换成管理系统中的一个一个功...
  • ilvu999
  • ilvu999
  • 2012年10月22日 16:34
  • 357

老鸟程序员知道而新手不知道的小技巧

作者:大狐狸 链接:http://www.zhihu.com/question/36426051/answer/76031743 来源:知乎 感谢原作者1.重构是程序员的主力技能。2.工作日志能...

有哪些老鸟程序员知道而新手不知道的小技巧?

1.重构是程序员的主力技能。 2.工作日志能提升脑容量。 3.先用profiler调查,才有脸谈优化。 4.注释贵精不贵多。杜绝大姨妈般的“例注”。漫山遍野的碎碎念注释,实际就是背景噪音。 5...

哪些老鸟程序员知道而新手不知道的小技巧?

1.重构是程序员的主力技能。2.工作日志能提升脑容量。3.先用profiler调查,才有脸谈优化。4.注释贵精不贵多。杜绝大姨妈般的“例注”。漫山遍野的碎碎念注释,实际就是背景噪音。5.普通程序员+g...

程序员老鸟写sql语句的经验之谈、百万数据查询优化技巧三十则

一、程序员老鸟写sql语句的经验之谈 做管理系统的,无论是bs结构的还是cs结构的,都不可避免的涉及到数据库表结构的设计,sql语句的编写等。因此在开发系统的时候,表结构设计是否合理,sql语句是否标...

漫谈程序员(十一)老鸟程序员知道而新手不知道的小技巧之Web 前端篇

老鸟程序员知道而新手不知道的小技巧 Web 前端篇 常充电!程序员只有一种死法:土死的。 函数不要超过50行。 不要一次性写太多来不及测的代码,而是要写一段调试一段。 UI和编码要同步做。 多写注释...

那些老鸟程序员知道而新手不知道的小技巧

重构是程序员的主力技能。 工作日志能提升脑容量。 先用profiler调查,才有脸谈优化。 注释贵精不贵多。杜绝大姨妈般的“例注”。漫山遍野的碎碎念注释,实际就是背景噪音。 普通程序员+google=...

介绍一些老鸟知道,新鸟不知道的技巧

第一: 需要解决比较复杂数学问题的时候,请直接找数学专业人士,而不是自己跳坑。 比如:汽车工业界几十年来都想消除 NURBS 曲面上的曲率突变,结果丘成桐直接从理论上证明他们是痴心妄想,后...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C老鸟编程技巧总结 (2)
举报原因:
原因补充:

(最多只允许输入30个字)