C 字符串
字符串
字符串用于存储文本/字符。
例如,“Hello World”是一串字符。
与许多其他编程语言不同,C 没有 字符串类型 轻松创建字符串变量。相反,您必须使用char
键入并创建一个大批 在 C 语言中组成字符串的字符数:
char Greetings[] = "你好,世界!";
请注意,必须使用双引号 (""
).
要输出字符串,您可以使用 printf()
与格式说明符一起使用%s
告诉 C 我们现在正在处理字符串:
访问字符串
由于字符串实际上是 数组 在 C 语言中,可以通过方括号内的索引号来访问字符串[]
.
此示例打印 第一个字符 (0) 在问候:
请注意,我们必须使用 %c
格式说明符来打印单个字符.
修改字符串
要更改字符串中特定字符的值,请引用索引号,并使用 单引号:
例子
char Greetings[] = "你好,世界!";
问候[0] = 'J';
printf("%s",问候);
// 输出 Jello World! 而不是 Hello World!
亲自尝试 »
循环遍历字符串
您还可以使用 for
环形:
就像我们在 数组 章节,您还可以使用sizeof 公式 (而不是在循环条件中手动写入数组的大小(i < 5)
)以使循环更加可持续:
例子
char carName[] = "沃尔沃";
int 长度 = sizeof(汽车名称) / sizeof(汽车名称[0]);
int 我;
对于(i = 0; i < 长度; ++i){
printf("%c\n", 汽车名称[i]);
}
亲自尝试 »
创建字符串的另一种方法
在上面的例子中,我们使用了“字符串文字”来创建字符串变量。这是在 C 中创建字符串的最简单方法。
您还应该注意,您可以用一组字符创建一个字符串。此示例将产生与本页开头的示例相同的结果:
例子
char Greetings[] = {'H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd', '!', '\0'};
printf("%s",问候);
亲自尝试 »
为什么我们要包括 \0
最后的人物? 这被称为“空终止符”,使用此方法创建字符串时必须包含它。它告诉 C 这是字符串的结尾。
差异
这两种创建字符串的方法的区别在于,第一种方法更容易编写,并且你不必包含 \0
字符,因为 C 会为您完成这件事。
您应该注意到两个数组的大小是相同的:它们都有 13 个字符 (顺便说一下,空格也算一个字符),包括\0
特点:
例子
char Greetings[] = {'H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd', '!', '\0'};
char Greetings2[] = "你好,世界!";
printf("%lu\n", sizeof(greetings)); // 输出 13
printf("%lu\n", sizeof(greetings2)); // 输出 13
亲自尝试 »
现实生活中的例子
使用字符串创建一个简单的欢迎消息: