LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 811|回复: 5

\是什么意思?

[复制链接]
发表于 2004-1-25 01:41:44 | 显示全部楼层 |阅读模式
看ourhdr.h
    90  #define writew_lock(fd, offset, whence, len) \
    91                          lock_reg(fd, F_SETLKW, F_WRLCK, offset, whence, len)

这里的 \ 是什么意思?
发表于 2004-1-25 03:04:28 | 显示全部楼层
意思为“转意”
举个例子:

  1. #define minuax(a,b) \
  2.         test_max(a,b)

  3. template<class T> inline
  4. T test_max(T a,T b)
  5. {
  6.         return ((a>b)?a:b);
  7. }

  8. main()
  9. {
  10.         int e=4,f=2,g;
  11.         g=minuax(e,f);
  12.         printf("%d\n",g);
  13. }
复制代码

这是我想的,不知道是不是这么回事
发表于 2004-1-25 14:52:17 | 显示全部楼层
上面的程序CHECK出错了?
xian.c:4: parse error before '<' token
发表于 2004-1-25 15:37:46 | 显示全部楼层
最初由 devel 发表
上面的程序CHECK出错了?
xian.c:4: parse error before '<' token


C++中,要用template,必须加入相关的头文件,
具体是什么东西,不记得啦。
发表于 2004-1-25 20:22:57 | 显示全部楼层
\是转意字符,实际的转意序列应该是\后跟一个换行,表示下一行应该和本行合成一行,不分开。
这个在一般C代码里没什么用,不过在宏里就比较重要,比如:

  1. #define PI \
  2. 3.1416
复制代码

实际上就是:

  1. #define PI 3.1416
复制代码

这个一般用在比较长的宏里
发表于 2004-1-26 14:26:56 | 显示全部楼层
谢谢libinary 的讲解。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表