c语言如何定义字符串
时间: 2024-09-26 15:03:06 浏览: 150
在C语言中,字符串实际上是一个字符数组,通常以空字符'\0'作为结束标志。以下是几种常见的定义字符串的方式:
1. 使用双引号 (`"`) 定义:
```c
char str[] = "Hello, World!";
```
这里创建了一个名为`str`的字符数组,包含文本"Hello, World!",最后自动添加了'\0'。
2. 使用字符数组和初始化器列表:
```c
char str[13] = {'H', 'e', 'l', 'l', 'o', ',', ' ', 'W', 'o', 'r', 'l', 'd', '\0'};
```
这种方法手动指定数组长度,并逐个字符赋值。
3. 动态分配内存(malloc):
```c
char *str;
str = (char *) malloc(sizeof(char) * 14); // 记得处理可能出现的NULL指针
strcpy(str, "Hello, World!"); // 使用strcpy复制字符串并添加'\0'
```
这里先动态分配空间,然后使用`strcpy`将字符串复制到新的内存位置。
4. 使用C++风格的初始izers:
```c99
char str[] = "Hello, World!"; // 在C99及以后版本可用
```
这需要C99及以上标准支持。
阅读全文