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'还代表了字符串结束标志。


相关文章
|
3月前
|
安全 编译器 C语言
C++入门1——从C语言到C++的过渡
C++入门1——从C语言到C++的过渡
85 2
|
12天前
|
存储 编译器 C语言
【C语言程序设计——入门】C语言入门与基础语法(头歌实践教学平台习题)【合集】
本文档介绍了C语言环境配置和编程任务,主要内容包括: - **C语言环境配置**:详细讲解了在Windows系统上配置C语言开发环境的步骤。 - **第1关:程序改错**:包含任务描述、相关知识(如头文件引用、基本语法规则)、编程要求、测试说明及通关代码。 - **第2关:scanf函数**:涉及`scanf`和`printf`函数的格式与使用方法,提供编程要求、测试说明及通关代码。 文档结构清晰,涵盖从环境搭建到具体编程任务的完整流程,适合初学者学习和实践。
36 4
|
12天前
|
C语言
【C语言程序设计——入门】基本数据类型与表达式(头歌实践教学平台习题)【合集】
这份文档详细介绍了编程任务的多个关卡,涵盖C语言的基础知识和应用。主要内容包括: 1. **目录**:列出所有关卡,如`print函数操作`、`转义字符使用`、`数的向上取整`等。 2. **各关卡的任务描述**:明确每关的具体编程任务,例如使用`printf`函数输出特定字符串、实现向上取整功能等。 3. **相关知识**:提供完成任务所需的背景知识,如格式化输出、算术运算符、关系运算符等。 4. **编程要求**:给出具体的代码编写提示。 5. **测试说明**:包含预期输入输出,帮助验证程序正确性。 6. 文档通过逐步引导学习者掌握C语言的基本语法和常用函数,适合初学者练习编程技能。
31 1
|
1月前
|
存储 NoSQL 编译器
【C语言】指针的神秘探险:从入门到精通的奇幻之旅 !
指针是一个变量,它存储另一个变量的内存地址。换句话说,指针“指向”存储在内存中的某个数据。
104 3
【C语言】指针的神秘探险:从入门到精通的奇幻之旅 !
|
1月前
|
存储 C语言 开发者
【C语言】字符串操作函数详解
这些字符串操作函数在C语言中提供了强大的功能,帮助开发者有效地处理字符串数据。通过对每个函数的详细讲解、示例代码和表格说明,可以更好地理解如何使用这些函数进行各种字符串操作。如果在实际编程中遇到特定的字符串处理需求,可以参考这些函数和示例,灵活运用。
79 10
|
2月前
|
存储 算法 C语言
C语言中常见的字符串处理技巧,包括字符串的定义、初始化、输入输出、长度计算、比较、查找与替换、拼接、截取、转换、遍历及注意事项
本文深入探讨了C语言中常见的字符串处理技巧,包括字符串的定义、初始化、输入输出、长度计算、比较、查找与替换、拼接、截取、转换、遍历及注意事项,并通过案例分析展示了实际应用,旨在帮助读者提高编程效率和代码质量。
148 4
|
3月前
|
存储 Java 编译器
初识C语言1——C语言入门介绍
初识C语言1——C语言入门介绍
45 1
|
3月前
|
C语言 C++
【C语言】解决不同场景字符串问题:巧妙运用字符串函数
【C语言】解决不同场景字符串问题:巧妙运用字符串函数
|
4月前
|
存储 C语言
【C语言基础考研向】10 字符数组初始化及传递和scanf 读取字符串
本文介绍了C语言中字符数组的初始化方法及其在函数间传递的注意事项。字符数组初始化有两种方式:逐个字符赋值或整体初始化字符串。实际工作中常用后者,如`char c[10]="hello"`。示例代码展示了如何初始化及传递字符数组,并解释了为何未正确添加结束符`\0`会导致乱码。此外,还讨论了`scanf`函数读取字符串时忽略空格和回车的特点。
134 8
|
3月前
|
C语言
回溯入门题,数据所有排列方式(c语言)
回溯入门题,数据所有排列方式(c语言)

热门文章

最新文章