易截截图软件、单文件、免安装、纯绿色、仅160KB

C宏的用法

前几天参加某公司的笔试,有一道题是用纯C实现一个泛型函数。郁闷了好久用C++模板实现了。
宏有如下的特点:
1.与const相比,宏是在预编译的时候完成的
2.define 只做简单的替换,不做类型安全检查
3.使用不当会引起很多问题
宏的用法:
1.简单的宏定义
#define  MAX 1024
2.宏定义功能块
#define MAX(a,b) (a)>(b)?(a):(b)      //比较大小的宏
3定义函数实现泛型
#define SORT(Type) void Buble_sort(Type a[],int len) { \
bool is_swap=true;\
for(int i=0;i<len&&is_swap;++i)\
{\
is_swap = false;\
for(int j=0;j<len-i;++j)\
{\
if(a[j]>a[j+1])\
{\
Type t;\
t=a[j];\
a[j+1] = a[j];\
a[j]=t;\
is_swap = true;\
}\
}\
}\
}
SORT(int);
SORT(double);
SORT(float);
SORT(unsigned int);
4.定义类
  #define   _DECL_class(name,   element   )\  
  class   df_##nm\  
  {\  
  protected:\  
  element         *pData;\  
  int num;\  
  \  
  void   _resize(int   n);\  
  \  
  public:\  
  nm(   ){};\  
  \  
  int   Count()   const   {   return   num;   }\  
  \};  
   
   
  _DECL_class(   cls_example,   int   );  


相关文档:

Linux C 编程 实现彩色文字输出

格式: echo "\033[字背景颜色;字体颜色m字符串\033[0m"
例如:
echo "\033[41;36m something here \033[0m"
其中41的位置代表底色, 36的位置是代表字的颜色
那些ascii code 是对颜色调用的始末.
\033[ ; m …… \033[0m
字背景颜色范围:40----49
40:黑
41:深红
42:绿
43:黄色
44:蓝色
45:紫色
4 ......

C/C++软件工程师就业求职手册节选一

 1、有符号变量与无符号变量值的变换
  将有符号变量转换为无符号变量,注意负数的转换。
2、数值的交换
  //使用临时变量
   void Swap1(int &a, int &b)
  {
      int temp = a;
      a = b;
   &nbs ......

Linux下C开发——gcc,gdb的使用

Linux

C
开发——
gcc

gdb
的使用
 
作者:
zccst
我们学习的过程应该是一个积累的过程,有无到有,又少到多,而不能像下山的猴子。
9
月份的时候是第一次系统学习
gcc, gdb, makefile
(详见前面博客)。如今作为嵌入式系统的一个组成部分,决定重学一次,感觉理解加深了一些。
gcc ......

Java调用C/C++ – JNI

昨天才看到,但是遇到一些问题,今天解决了,记下……(参考:http://netbeans.org/kb/55/beginning-jni-part1.html)
我用的是Netbeans 6.7,但是和其他的也应该大同小异吧。 基本流程: Java这边的:
创建java文件(带native的),还要记得在类中加入:System.loadLibrary(xxx) 。
然后用javah来生成C/ ......

不可小看的extern "C"

     项目中要用到一个模块。看了下该模块的用法,就依葫芦画瓢的搬到自己的代码里面来了。不过在编译的时候碰到了麻烦, 在程序链接的时候出错:“undefined reference to***",应该是因为没有包含相应的库文件吧。
      于是比较了make file文件的写法,试图在我这边 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号