C语言中怎么表示一个字符串
时间: 2024-12-13 22:20:04 浏览: 0
C语言实现输入一个字符串后打印出该字符串中字符的所有排列
在 C 语言中,字符串是以字符数组的形式表示的,通常以空字符 '\0' 结尾。这被称为 null-terminated character string 或 NULL-terminated string。字符串常量可以直接通过双引号包围文本来创建,例如:
```c
char str1[] = "Hello, World!"; // 字符串字面量
```
这里 `str1` 就是一个字符串,包含了 "Hello, World!" 这些字符,最后一个字符是空字符 '\0'。字符串数组实际上是一块连续的内存空间,用于存储每个字符的ASCII值。
另外,C 语言还提供了一种特殊的字符串变量类型 `const char*`,它是指向 const char 类型的指针,这种类型的变量可以指向静态存储区的字符串字面量或者动态分配的字符串,例如:
```c
const char* str2 = "This is a const string"; // 指针指向静态字符串
char* str3 = (char*) malloc(strlen("Another dynamic string") + 1); // 动态分配字符串
strcpy(str3, "Another dynamic string"); // 复制字符串到动态内存
str3[strlen("Another dynamic string")] = '\0'; // 添加结束符
```
在使用完字符串之后,注意要通过 `free()` 函数释放由 `malloc()` 分配的内存。
阅读全文