码迷,mamicode.com
首页 > 编程语言 > 详细

算法研发---越过心中的那道坎

时间:2014-12-17 21:06:46      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:数据结构   程序员   宏定义   c语言      



是否看到这样的东东有种头大了的感觉:
  NTF_HR(m_pBaseClass->SetStr(m_hGPROG.hfCoef, (const float*)hfCoef) );

你一定会很好奇NTF_HR()这是什么东西? 函数?不是吧,长得这么“丑”?

如果你看到类似下面这样一堆东东:
#ifndef _CRT_WPERROR_DEFINED
#define _CRT_WPERROR_DEFINED
 {_wperror(_In_opt_z_ const wchar_t * _ErrMsg);\
 _fgetwc_nolock(_Inout_ FILE * _File);\
 _fputwc_nolock(_In_ wchar_t _Ch, _Inout_ FILE * _File);\
 _ungetwc_nolock(_In_ wint_t _Ch, _Inout_ FILE * _File);}
有些大神写的甚至不换行,很牛逼的样子,看着都醉了;


不废话了,在这里总结一些宏定义的作用以及用法(基本用法就不说了,大学C语言老师告诉你了):
宏定义目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,可能刚开始接触程序时候不太理解,不过随着深入,你会深刻的感受到它存在的合理性;
如果不理解上面的代码:给你简化一些,Give you a sample example as follow:
#define MYTEST(p) {int jj=p;if(jj>0) {cout << "我爱C++" << endl;}\
                             else if(jj<0) cout <<"不恨C++" << endl; \
                             else cout << "Fuck C++" << endl; }
如果你写个测试函数,如下:
int main()
{
MYTEST(100);
MYTEST(0);
MYTEST(-100);

}
Look the result,you will be excited to see it ,it‘s rather funny ,isn‘t it ?
偷偷告诉你斜线\无非就是个换行符;你会疑问这里的p是个啥东西?呵呵,他就是一个代号,p是什么类型,有你决定,它可以是个句柄、任意类型的变量,也可以是个其他类型的数据结构;


感悟:有时候不是困难来的太突然,而是你没有挑战困难的勇气;作为 A Software Engineer ,很多问题可以从哲学中找到答案;保持清醒的头脑,不断给自己充电,你才会走的更远.................

算法研发---越过心中的那道坎

标签:数据结构   程序员   宏定义   c语言      

原文地址:http://blog.csdn.net/gggg_ggg/article/details/41985119

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!