C语言从入门到精通——字符串和转义字符

简介: C语言从入门到精通——字符串和转义字符

字符串


一种由双引号引起来的一串字符称为字符串,比如:


"hello world"

字符串最后面一定有'\0',但是它是不可见的,我们可以用sizeof来计算一下字符串长度。


0a2653c851af460fa595bd959398a8f1.png


我们可以看到,本身"hello world"是只用是一个字符的,但是sizeof算出来的结果是12,说明有一个我们看不到的字符在最后面,就是'\0',而'\'0’就是我们转义字符的一种,它表示字符串结束标志,在我们C语言中,字符串其实和字符数组一样,所以我们的写法也可以是:


char ch[]={'h','e','l','l','o',' ','w','o','r','l','d'};

那我们上面说,字符串结束标志是'\0',但是我们这样写并没有写'\0',那像上面这样写,我们来计算一下整个字符串长度是不是12。


0eacb84100b54626af849e6b562bf92a.png


我们可以看到是11,这是因为我们前面数组没有给定一个元素个数,所以后面有多少元素元素个数就是多少,我们打印一下这个字符串看看。


2d65d23f6d4748949b924e4057485923.png


我们可以看到,同样我们想用来表达"hello world"的两串字符串打印出的结果是不一样的,这就是


'\0'的作用,我们的编译器遇到字符串的时候是会去找这个'\0'的,找到'\0'才算这个字符串结束,我们的ch2没有自己带一个'\'0',所以编译器会一种往后面找,找到'\0'才会停下来,所以我们这个方式的正确写法是


char ch[]={'h','e','l','l','o',' ','w','o','r','l','d','\0'};

在这最后面加上一个'\0'就行。


转义字符


20a75ac1078a457eb6af6e03411ae1f9.jpeg


转义字符就是一个'\'加上一个字符或者字母,所有转义字符就如上图所示,其中'\0'还代表了字符串结束标志。


相关文章
|
1天前
|
安全 编译器 C语言
C++入门1——从C语言到C++的过渡
C++入门1——从C语言到C++的过渡
14 2
|
1天前
|
存储 Java 编译器
初识C语言1——C语言入门介绍
初识C语言1——C语言入门介绍
12 1
|
3天前
|
C语言 C++
【C语言】解决不同场景字符串问题:巧妙运用字符串函数
【C语言】解决不同场景字符串问题:巧妙运用字符串函数
|
28天前
|
存储 C语言
【C语言基础考研向】10 字符数组初始化及传递和scanf 读取字符串
本文介绍了C语言中字符数组的初始化方法及其在函数间传递的注意事项。字符数组初始化有两种方式:逐个字符赋值或整体初始化字符串。实际工作中常用后者,如`char c[10]="hello"`。示例代码展示了如何初始化及传递字符数组,并解释了为何未正确添加结束符`\0`会导致乱码。此外,还讨论了`scanf`函数读取字符串时忽略空格和回车的特点。
|
28天前
|
存储 Serverless C语言
【C语言基础考研向】11 gets函数与puts函数及str系列字符串操作函数
本文介绍了C语言中的`gets`和`puts`函数,`gets`用于从标准输入读取字符串直至换行符,并自动添加字符串结束标志`\0`。`puts`则用于向标准输出打印字符串并自动换行。此外,文章还详细讲解了`str`系列字符串操作函数,包括统计字符串长度的`strlen`、复制字符串的`strcpy`、比较字符串的`strcmp`以及拼接字符串的`strcat`。通过示例代码展示了这些函数的具体应用及注意事项。
|
1月前
|
存储 人工智能 C语言
C语言程序设计核心详解 第八章 指针超详细讲解_指针变量_二维数组指针_指向字符串指针
本文详细讲解了C语言中的指针,包括指针变量的定义与引用、指向数组及字符串的指针变量等。首先介绍了指针变量的基本概念和定义格式,随后通过多个示例展示了如何使用指针变量来操作普通变量、数组和字符串。文章还深入探讨了指向函数的指针变量以及指针数组的概念,并解释了空指针的意义和使用场景。通过丰富的代码示例和图形化展示,帮助读者更好地理解和掌握C语言中的指针知识。
|
2月前
|
C语言
C语言------程设设计入门
这篇文章是C语言程序设计的入门教程,涵盖了C程序的实现过程、VC集成开发环境的使用、基本数据类型的使用、格式控制字符的作用,以及通过示例代码演示了如何使用printf()函数输出不同类型的数据。
C语言------程设设计入门
|
1月前
|
C语言
C语言 字符串操作函数
本文档详细介绍了多个常用的字符串操作函数,包括 `strlen`、`strcpy`、`strncpy`、`strcat`、`strncat`、`strcmp`、`strncpy`、`sprintf`、`itoa`、`strchr`、`strspn`、`strcspn`、`strstr` 和 `strtok`。每个函数均提供了语法说明、参数解释、返回值描述及示例代码。此外,还给出了部分函数的自实现版本,帮助读者深入理解其工作原理。通过这些函数,可以轻松地进行字符串长度计算、复制、连接、比较等操作。
|
2月前
|
C语言
【C语言】字符串及其函数速览
【C语言】字符串及其函数速览
27 4
|
2月前
|
NoSQL Java 编译器
C语言从入门到精通该怎样学?
持续学习与实践:编程是一门需要不断学习和实践的技能,要保持对新技术和新知识的敏感性,并持续进行编程实践。
44 1