目录
前文列表
《程序编译流程与 GCC 编译器》
《C 语言编程 — 基本语法》
《C 语言编程 — 基本数据类型》
《C 语言编程 — 变量与常量》
《C 语言编程 — 运算符》
《C 语言编程 — 逻辑控制语句》
《C 语言编程 — 函数》
《C 语言编程 — 高级数据类型 — 指针》
字符串
在 C 语言中,字符串由 char *
类型表示。它是由一串字符组成的,并以一个空终结字符结尾。所以,字符串实际上是使用 null 字符 ‘ ’ 终止的一维字符数组。下面的声明和初始化创建了一个 “Hello” 字符数组(字符串)。由于在数组的末尾存储了空字符,所以字符数组的大小比单词 “Hello” 的字符数多一个。
char greeting[6] = {'H', 'e', 'l', 'l', 'o', ' '};
字符串还可以字面量来表示,将要表示的字符串包裹在 " "
中就可以了。也就是说,并不需要把 null 字符显式的放在字符串常量的末尾。C 编译器会在初始化数组时,自动把 ‘ ’ 放在字符串的末尾。
char greeting[] = "Hello";
C 中内置的字符串操作函数:
#include <stdio.h>
#include <string.h>
int main ()
{
char str1[12] = "Hello";
char str2[12] = "World";
char str3[12];
int len ;
/* 复制 str1 到 str3 */
strcpy(str3, str1);
printf("strcpy( str3, str1) : %s
", str3 );
/* 连接 str1 和 str2 */
strcat( str1, str2);
printf("strcat( str1, str2): %s
", str1 );
/* 连接后,str1 的总长度 */
len = strlen(str1);
printf("strlen(str1) : %d
", len );
return 0;
}
运行:
strcpy( str3, str1) : Hello
strcat( str1, str2): HelloWorld
strlen(str1) : 10