C语言中如何正确打印单引号和双引号

C语言中如何正确打印单引号和双引号(字符常量)

编译器 vc++ 2010

最近对C语言中最基本的字符常量产生了一些疑惑,网上了查了查大家说的不太一样,于是自己专门验证了一下。
一、转义字符的方式
由于单双引号都是ASCII中的特殊字符,首先按照转义字符的定义打印结果如下:

#include<stdio.h>
#include<stdlib.h>
int main()
{
	char a = '\'';
	char b = '\"';

	printf("%c\n%c\n",a,b);

	system("pause");
	return(0);

}


可见通过加反斜杠成为转义字符的方式可以打印出来单引号和双引号
二、直接用单引号括起来
当双引号用单引号括起来时,此时双引号可以理解是一个普通的字符常量

	char b = '"';	
	printf("%c\n",b);

在这里插入图片描述
但是,当单引号应用单引号时,编译会发生错误,系统会认为单引号中为空,而单引号中不能为空(不合法)
在这里插入图片描述

总结
双引号可以用转义或单引号括起来的方式打印输出,单引号只能用转义字符来打印。
另外以上方法也可以用来检测其他特殊字符,例如 \ 只能用 ’ \\ '打印

扩展
① 在printf中输出双引号

#include <stdio.h>
int main()
{
     printf(" \" school \" ");
     return 0;
}

②基本概念
'\ddd’表示的是三个八位制的ASCII的数
'\xdd’表示的是两个十六进制的ASCII的数
通过对应的八位与十六位制ascii表得到它们代表的字符

  • 21
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值