C语言中接续符和转义符

--事物的难度远远低于对事物的恐惧!    

本篇章来分析下C语言中的接续符和转义符,对于接续符,首先来看一段代码:

#inclu\
de <std\
io.h>

int ma\
in()
{
	prin\
tf("Hello D.T.\n");
	retu\
rn 0;
}	prin\
tf("Hello D.T.\n");
	retu\
rn 0;
}

对于这段代码,你觉得有错吗?为什么?我在vs2010中编译通过,并且输出如下:

从编译及输出结果我们知道,代码并没有错(即使我们主观上觉得代码有问题),那么让我们来具体分析下这段代码。

代码中使用了接续符'\',而接续符有如下特性,请牢记:

    -编译器会将反斜杠剔除,跟在反斜杠后边的字符自动接续到前一行

    -在接续单词是,反斜杠之后不能有空格,反斜杠的下一行之前也不能有空格

    -接续符适合在定义宏代码块时使用 

通过接续符的特性,编译器在编译上边那段代码时就会把代码还原为如下:

#include <stdio.h>

int main()
{
    printf("Hello D.T.\n");

    return 0;
}

相信你已经明白了,现在来看一个接续符最适合应用的场景:宏代码块,我们定义宏来交换两个变量的值。

#define SWAP(a, b)	\
{			\
    int temp = a;	\
    a = b;		\
    b = temp;		\
}

相信你第一眼看如上宏代码块,就知道这个宏的功能是什么,所以使用好接续符,会使我们的代码质量变得很好。

    说完了接续符,现在来看看转移符:在C语言中,转移符(\)主要用于无回显字符,也可用于表示常规字符。

    当使用转义字符时,\必须出现在单引号或者双引号之间。如下代码所示:

#include <stdio.h>

int main()
{
    char enter = '\n';
    
    char* p = "\141\t\x62";
    
    printf("%s", p);
    printf("%c", enter);
    
    return 0;
}

输出为:

 

总结:

    C语言中的反斜杠(\)同时具有接续符和转移符的作用

        -作为接续符使用时可直接出现在程序中

        -作为转移符使用时需要出现在单引号或双引号之间

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值