初始C语言(二)

4. 字符串+转义字符+注释

4.1 字符串

在这里插入图片描述
这种由双引号(Double Quote)引起来的一串字符称为字符串字面值(String Literal),或者简称字符串

注:字符串的结束标志是一个 \0 的转义字符。在计算字符串长度的时候 \0 是结束标志不算作字符串内容
如果你想存储一个字符:char ch =‘w’;,如果你想存储字符串,那么就要用到数组,通常有两种写法,但这两种写法也有不同之处,我这里用ch1和ch2给大家举例:
在这里插入图片描述
可以看到ch1是用{}初始化,里面放的是一个一个的字符,而ch2是直接用“”引起来一串字符,那么这样他们打印的效果是否相同呢?
在这里插入图片描述
我们发现打印出来效果并不一样,这是怎么回事呢?
在这里插入图片描述
经过调试我们发现,ch2最后有’\0’,而ch2这种写法默认最后隐藏了’\0’,而ch1没有,上文也提到:字符串的结束标志是一个 \0 的转义字符。在计算字符串长度的时候 \0 是结束标志,不算作字符串内容。
在这里插入图片描述
当我们将ch1最后加上’\0’结果就相同了,问题也就解决了。

4.2转义字符

假如我们要在屏幕上打印一个目录: c:\code\test.c
那么我们应该怎么写代码呢?
在这里插入图片描述
但实际上程序运行的结果是这样的,这里就不得不提一下转义字符了。转义字符顾名思义就是转变意思
下面看一些转义字符:

在这里插入图片描述
这里我们重点关注这两个转义字符:

在这里插入图片描述
我们来看一段代码:
在这里插入图片描述
我们可以看到打印的结果是:3
在这里插入图片描述
我们发现8进制的’063’转换成十进制是’51’,那么’51’对应的为什么是’3’呢?
在这里插入图片描述
这里是由八进制转换成十进制,通过ASCII表我们不难发现51对应的就是3,而\xdd也是相同的道理。

5. 注释

  1. 代码中有不需要的代码可以直接删除,也可以注释掉
  2. 代码中有些代码比较难懂,可以加一下注释文字
#include <stdio.h>
int Add(int x, int y)
{
    return x+y;
}
/*C语言风格注释
int Sub(int x, int y)
{
    return x-y;
}
*/
int main()
{
    //C++注释风格
    //int a = 10;
    //调用Add函数,完成加法
    printf("%d\n", Add(1, 2));
    return 0;
}

注释有两种风格:
C语言风格的注释 /*xxxxxx */
缺陷:不能嵌套注释
C++风格的注释 //xxxxxxxx
可以注释一行也可以注释多行

解释:不能嵌套注释
在这里插入图片描述
/* 只与最近的 */相匹配所以上面的代码就发生的bug。
在这里插入图片描述
好了,本篇文章就到此结束了,我们下期再见!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CC小师弟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值