怃膝镁 发表于 2025-6-14 21:07:00

C/C++字符串

C语言字符串

C 语言中的 “string” 并不是一种内建类型,而是一种以 '\0'(null 字符)结尾的字符数组,用来表示字符串。C 语言的字符串处理完全是基于字符数组和标准库函数的组合实现的,理解起来要靠对内存、指针和字符操作的深入掌握。
一、C语言字符串的本质

定义

C 语言的字符串是 一串字符 + 结尾的 '\0'(null 终止符),用于标记字符串的结束。
char str[] = "hello";这其实是一个字符数组,相当于:
char str = { 'h', 'e', 'l', 'l', 'o', '\0' };✅ 存储结构图

字符hello\0下标012345二、定义字符串的几种方式

1. 使用字符数组

char s1[] = "hello";    // 推荐方式,会自动添加 '\0'2. 使用指针指向字符串常量(只读)

const char* s2 = "world";// 指向只读区域,不能修改 *s23. 自定义字符数组初始化

char s3 = {'h','e','l','l','o','\0'};三、常用字符串处理函数(来自 )

函数功能示例strlen(s)获取长度(不含\0)strlen("abc") == 3strcpy(dest, src)拷贝字符串strcpy(a, b);strncpy(dest, src, n)拷贝 n 字符strncpy(a, b, 5);strcat(dest, src)拼接字符串strcat(a, b);strcmp(a, b)比较字符串strcmp("a","b")
页: [1]
查看完整版本: C/C++字符串