1) 用在宏定义中:

#define CV_ARE_SIZES_EQ(mat1, mat2) \

((mat1)->rows == (mat2)->rows && (mat1)->cols == (mat2)->cols)

2) 用在printf中,有时候printf中语句太长,需要切分,则需用到反斜杠;

3) 用“//”只能注释当前行的语句,想要将下一行一起注释掉,则可以在该行最后加上反斜杠。

另外,反斜杠除了强制换行的作用之外,还有转义符的意思。如:“\n”表示换行符,"\t" "\b"等,此时反斜杠表示转义,执行反斜杠后面的符号表示的意思。

但若要取反斜杠的本意,则需要在反斜杠之前再加一个反斜杠才能正确表示。比如我要在程序中读取F:\OpenCV2.0\vs2008\videos\videos1.avi ,,我不能直接将这样表示,而应该在每一个反斜杠前面再加一个反斜杠,表示为:F:\\OpenCV2.0\\vs2008\\videos\\videos1.avi ,这样才能正确读取你要的文件。

总结一下,目前个人了解的反斜杠的作用是两种:

1 是作为转义字符,将进行的操作是紧跟其后的字符的操作。

2 与回车键组合进行强制换行。在要强制换行的地方输入反斜杠然后回车,系统编译的时候会自动将反斜杠下面的一行与前面的一行解释成一个语句。

续行符在普通代码行后面加不加都一样(VC是自动判断续行的),但是在宏定义里面就特别有用,因为宏定义规定必须用一行完成:

#define SomeFun(x, a, b) if(x)x=a+b;else x=a-b;

这一行定义是没有问题的,但是这样代码很不容易被理解,以后维护起来麻烦,如果写成:

#define SomeFun(x, a, b)

if (x)

x = a + b;

else

x = a - b;

这样理解是好理解了,但是编译器会出错,因为它会认为#define SomeFun(x, a, b)是完整的一行,if (x)以及后面的语句与#define SomeFun(x, a, b)没有关系.

这时候我们就必须使用这样的写法:

#define SomeFun(x, a, b)\

if (x)\

x = a + b;\

else\

x = a - b;

注意:最后一行不要加续行符啊.VC的预处理器在编译之前会自动将\与换行回车去掉,这样一来既不影响阅读,又不影响逻辑,皆大欢喜

c语言反斜杠,掌握C++编程中反斜杠续行符的使用方法相关推荐

  1. 计算机语言里面的斜杠,编程中常见的斜杠(/和\)问题

    正斜杠,又称左斜杠,符号是"/":反斜杠,也称右斜杠,符号是"\". 用在目录中 在Unix/Linux中,路径的分隔采用正斜杠"/",比如 ...

  2. c语言case后接printf,C编程中switch。case 问题

    int main() { int imonth; printf("请输入月份:\n"); scanf_s("%d",&imonth,2); switch ...

  3. 【C语言】取余%操作在编程中的重要作

    0.做个假设:有一个五位数:12345--> 第一类必知小知识点:除法/--去掉尾数(或:顺序取数) ①去掉最后4位数字(即取首数): 12345 /10000=1.×××× ②去掉最后3位数字 ...

  4. JAVA 代码交互率低的原因分析,深入剖析Java编程中的中文问题及建议最优解决方法...

    说明:本文为作者原创,作者联系地址为: josserchai@yahoo.com .由于 Java 编程中的中文 问题是一个老生常谈的问题,在阅读了许多关于 Java 中文问题解决方法之后,结合作者的 ...

  5. python中反斜线是什么意思_Python中正反斜杠(‘/’和‘’)的意义与用法

    刚刚在学习些测试报告的时候,出现一个路径的问题,找了很久的原因,竟然是少了一个反斜杠引起的,在此顺便记录一下正反斜杠的作用. 在Python中,记录路径时有以下几种写法,如:(大家都知道\n是换行的意 ...

  6. js 字符串换行_JS代码编程中经常用到的超长字符串换行方法,你最喜欢哪一种?

    编写js代码的时候,经常会用到超长字符串的拼接. 例如,把系统时间中的年.月.日.时.分.秒共6个数字动态拼接到一个tr行,不换行的话,将是一个超长的字符串,阅读.维护都不方便.这时就需要将这个字符串 ...

  7. 嵌入式编程中boot和app的s19简易合并方法(使用mfc编程)

    嵌入式中boot和app为两个项目,使用手动合并方式较慢,如何使用mfc编写程序实现自动合并 1.实现逻辑,首先将boot.s19和app.s19拷贝一份 CommonCopyFile((CStrin ...

  8. Python编程中列表、字典、元组的使用方法总结

    一. 列表 1. 列表的一些常用方法 append 在列表尾部增加元素,该方法无返回值 In: a = [1,2,3,4]b = a.append(5) Out: a = [1,2,3,4,5]b = ...

  9. Python面向对象编程中的创建类及其实例化对象等方法.....【超级详细】

最新文章

  1. MySQL8.0设置远程访问权限
  2. 编译Android VNC Server
  3. 背景图片随着浏览器拖动而变化
  4. 计算机系统结构专业是什么专业,中国大学计算机系统结构专业排名
  5. Maven配置文件POM属性最全详解
  6. Android 系统(160)---Android 32/64 bits 升级准则
  7. 为小本打造简洁实用的开始菜单
  8. 变形二叉树中节点的最大距离(树的最长路径)——非递归解法
  9. cmd无法运行python_为什么CMD无法运行python程序
  10. 2层框架结构柱子间距_钢筋混凝土楼板层其施工方法有哪些不同
  11. 高质量程序设计指南C++/C试题
  12. 全局唯一编码ID生成器
  13. php中strtotime函数,PHP中strtotime函数用法举例
  14. 5.23低版本到高版本问题
  15. 产品经理进修第六天 产品经理面试
  16. c语言字符串输出大写字母个数,欧洲区预选赛视频直播 -官方网站
  17. Mac Office Word设置多级标题
  18. 神经网络系统图片高清,神经网络系统图片结构
  19. IDC时评:从巴黎圣母院大火看数据中心运维
  20. 为啥小扎一直醉心于元宇宙的布局?

热门文章

  1. 概率及常用概率分布的实现——计算机视觉修炼之路(零)
  2. 基于Java的校园点餐系统的设计与实现(论文+源码)_kaic
  3. oracle 中的日期函数
  4. Linux中的文件传输
  5. 字符三角形 Java 作业
  6. 【概率论与数理统计01】那些年,正态分布、指数分布、伽马分布、卡方分布之间的发生的那些事儿(上)
  7. MIT大神写给女神的Q版Python画图库—Cutecharts
  8. Sqlsugar使用Oracle进行时间查询相关
  9. 深夜看了张一鸣的微博,让我越想越后怕…
  10. Transient 的用法