初识C语言(4)字符串和转义字符

简介: 初识C语言(4)字符串和转义字符

字符和字符串

许多时候,我们写程序的时候都会有单引号'',和双引号"",许多人不知道其中的区别。

字符

我们先说字符,字符就是一个一个的符号,比如说1,a, (空格),;这些都叫做字符。在C语言中,常用单引号''来表示一个字符。比如'a',表示字符a。'1',表示字符1。


但是我们需要注意了:字符是字符,数字是数字。'1'不等于1。什么意思呢?我们需要明白一个概念,叫做Ascii码表。我们都知道,计算机其实只能识别数字0和1。那么怎么表现出来这么多字符的呢?其实,一开始我们就在计算机中写入了这些字符,然计算机记住这些字符,当我们写一个数字65的时候,计算机就知道是字符A。


举个例子

#include <stdio.h>
int main()
{
  printf("%d\n", '1'); //字符1,查ascii可以知道字符1,是对应49
  printf("%d\n", 1);   //数字1
  printf("%c\n", 65);  //数字65,注意,这里是%c表示打印字符
  printf("%c\n", 'A'); //字符A
  return 0;
}


我们可以看到结果如下,字符'1'打印出来的结果是49,查ascii码表知道,字符1就是49。而数字1,打印出来就是1。接下来我们打印字符,我们发现65和'A'打印结果一样。查表就可以得知,字符'A'对应65。

知道了这些概念之后,我们其实可以利用字符表示一个比较大的数字,并且进行数学运算。

下面我们将字符'A'减去40,就可以想到于是65-40,最后打印出来25。

#include <stdio.h>
int main()
{
  printf("%d\n", 'A'-40); //25
  return 0;
}


字符串

字符串其实就是多个字符的组合,他用双引号""来表示。不过我们需要注意,每一个字符串最后面都有一个\0。什么意思呢?看代码

#include <stdio.h>
#include<string.h>  //strlen函数所需头文件,strlen可以计算出字符串的字符个数
int main()
{
  printf("%d\n", strlen("abc")); //3
  printf("%d\n", sizeof("abc")); //4
  return 0;
}


为什么一个是3一个是4呢?首先,我们可以知道abc只有3个字符,所以第一个代码可以理解。第二个的话,我们知道,一个字符就是char型数据,而char占一个字节。如果是abc的话,应该是占3个字节才对啊。我上面说了,每一个字符最后面都有一个\0,而\0也是char型的数据,所以一共有4个字节。


转义字符

现在,假设我们想打印出来\n,应该怎么做呢?我们都知道,\n是用来换行的,如果直接打印\n肯定不行,而且计算机中还有许多和\n同样的转义字符。


如果我们需要打印这些字符怎么办呢?那么我们就需要说到转义字符'\'了。

#include <stdio.h>
int main()
{
  printf("\n");  //换行
  printf("\\n"); //打印\n
  return 0;
}
目录
相关文章
|
19天前
|
存储 C语言
【我爱C语言】详解字符函数isdigit和字符串转换函数(atoi和snprintf实现互相转换字符串)&&三种strlen模拟实现2
【我爱C语言】详解字符函数isdigit和字符串转换函数(atoi和snprintf实现互相转换字符串)&&三种strlen模拟实现
|
4天前
|
存储 C语言
字符串的引用方式在C语言中的探讨
字符串的引用方式在C语言中的探讨
18 5
|
5天前
|
存储 C语言
向函数传递字符串: C语言中的技术与实践
向函数传递字符串: C语言中的技术与实践
14 0
|
5天前
|
C语言
C语言指针与字符串
C语言指针与字符串
|
5天前
|
存储 C语言
C语言中的字符串访问与输入输出技术详解
C语言中的字符串访问与输入输出技术详解
14 0
|
5天前
|
存储 Serverless C语言
C语言中的字符串储存技术
C语言中的字符串储存技术
18 0
|
5天前
|
存储 安全 C语言
C语言中的字符串常量及其处理技术
C语言中的字符串常量及其处理技术
14 0
|
6天前
|
C语言
C语言常量与变量、字符串与转义字符
C语言常量与变量、字符串与转义字符
|
10天前
|
C语言
C语言基础 - 字符串/字符数组最易错考点
该文探讨了C语言中&#39;\0&#39;字符对字符串和字符数组的重要性,以及`strlen`和`sizeof`的区别。&#39;\0&#39;作为字符串的结束标志,确保了正确打印和计算字符串长度。示例代码显示,未包含&#39;\0&#39;的字符数组打印时可能出现随机值。`strlen`计算字符串长度,不包含&#39;\0&#39;,而`sizeof`返回变量或数组的总字节数,包括&#39;\0&#39;。文章还提醒注意转义字符在字符串中的影响,例如`\t`和`\62`。最后总结了字符串和字符数组处理时应注意的要点。
23 0
C语言基础 - 字符串/字符数组最易错考点
|
12天前
|
C语言
c语言:字符串和内存函数介绍-2
c语言:字符串和内存函数介绍
15 0