c 中的空终止字符串-ag捕鱼王app官网

c 中的空终止字符串

作者:迹忆客 最近更新:2023/03/29 浏览次数:

这篇小文章将讨论字符串在c语言中的使用。 c语言中的字符串是使用字符数组构成的。


c 中的字符串

实际上,字符串是一个一维字符数组,以空字符 \0 结束。 组成字符串的字符后跟一个 null 以形成一个以 null 结尾的字符串。

下面的代码片段创建了一个以空字符结尾的字符串。 为了将空字符放在末尾,我们需要使字符串的长度比字符串的原始字数多一个字符。

char test[5] = {'t', 'e', 's', 't', '\0'};

这是c中初始化字符串的一种方式,注意字符串大小设置为5,但字符串的字符数为4,第5个字符为空字符\0。

您还可以按照以下代码段初始化字符串。

char test[] = "test";

因此,将空字符放在字符串的末尾不是强制性的。 c 编译器会自动为我们做这些。

当我们打印两个字符串时,不会打印终止空字符。 让我们看看下面的例子。

#include 
int main () {
    char test[5] = {'t', 'e', 's', 't', '\0'};
    char test2[] = "test";
    printf("test message: %s\n", test );
    printf("test message 2: %s\n", test2 );
}

我们在上面的代码段中创建了两个字符串,并用相同的数据对它们进行了初始化。 我们在第一个字符的末尾明确放置了一个空字符。

同时,它没有放在第二个中。 当我们打印这些字符串时,两者将具有相同的数据。

输出结果:

c strings demo


c 中的 c 字符串库函数

c 中的许多函数都支持用于以 null 结尾的字符串。 string 类中提供了许多函数; 一些如下。

序号 函数 说明
1 strcpy(str1, str2); 它将 str1 复制到 str2。
2 strcat(str1, str2); 它连接 str2 和 str1,使得 str1 后跟 str2
3 strlen(str1); 它告诉 str1 的长度。
4 strcmp(str1, str2); 它有三个结果: 1 如果 str1 和 str2 相等; 如果 str1 < str2 则为负; 如果 str1 > str2 则为正
5 strchr(str1, c); 返回对 str1 中第一次出现的 c 的引用
6 strstr(str1, str2); 返回对 str1 中第一次出现的 str2 的引用

下面的示例使用其中一些函数来演示 c 中字符串的使用。

#include 
#include 
int main () {
   char mystr1[12] = "first";
   char mystr2[12] = "second";
   char mystr3[12];
   int  length ;
   /* copy the first string into the third */
   strcpy(mystr3, mystr1);
   printf("strcpy( mystr3, mystr1) :  %s\n", mystr3 );
   /* concatenates first and second */
   strcat( mystr1, mystr2);
   printf("strcat( mystr1, mystr2):   %s\n", mystr1 );
   /* length of the first string after concatenation */
   length = strlen(mystr1);
   printf("strlen(mystr1) :  %d\n", length );
   return 0;
}

输出结果:

string functions output

上一篇:c 中 stack smashing detected 错误

下一篇:

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在c中将整数转换为字符

发布时间:2024/01/03 浏览次数:131 分类:c语言

本教程介绍了在c中将整数转换为字符的不同方法。在c编程语言中,将整数转换为字符在各种情况下都很重要。在c中,字符是以ascii值表示的,因此转换过程相对简单。

发布时间:2023/05/07 浏览次数:364 分类:c语言

本文介绍了如何在 c 语言中使用 typedef enum。使用 enum 在 c 语言中定义命名整数常量 enum 关键字定义了一种叫做枚举的特殊类型。

c 语言中的静态变量

发布时间:2023/05/07 浏览次数:167 分类:c语言

本文介绍了如何在 c 语言中使用静态变量。在 c 语言中使用 static 变量在函数调用之间保存变量值

c 语言中生成随机数

发布时间:2023/05/07 浏览次数:158 分类:c语言

本文演示了如何在 c 语言中生成随机数。使用 rand 和 srand 函数在 c 语言中生成随机数

发布时间:2023/05/07 浏览次数:129 分类:c语言

本文演示了如何在 c 语言中使用前缀增量与后缀增量运算符。c 语言中 i 和 i 记号的主要区别

发布时间:2023/05/07 浏览次数:275 分类:c语言

本文演示了如何在 c 语言中获取当前工作目录。使用 getcwd 函数获取当前工作目录的方法

发布时间:2023/05/07 浏览次数:177 分类:c语言

本文介绍了如何在 c 语言中使用位掩码。使用 struct 关键字在 c 语言中定义位掩码数据

发布时间:2023/05/07 浏览次数:212 分类:c语言

本文演示了如何在 c 语言中使用标准库排序函数。使用 qsort 函数对 c 语言中的整数数组进行排序

c 语言中的 extern 关键字

发布时间:2023/05/07 浏览次数:131 分类:c语言

本文介绍了如何在 c 语言中使用 extern 关键字。c 语言中使用 extern 关键字来声明一个在其他文件中定义的变量

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便
网站地图