c语言中字符串转数组
时间: 2023-11-24 13:53:05 浏览: 94
在C语言中,字符串常量是按字符数组处理的,因此可以通过定义字符数组来实现字符串转数组的功能。具体实现方法如下所示:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello, world!"; // 定义一个字符数组并初始化为字符串常量
int len = strlen(str); // 获取字符串的长度
printf("String length: %d\n", len); // 输出字符串的长度
for (int i = 0; i < len; i++) {
printf("%c ", str[i]); // 逐个输出字符数组中的元素
}
printf("\n");
return 0;
}
```
上述代码中,我们首先定义了一个字符数组`str`并将其初始化为字符串常量`"Hello, world!"`。然后,我们使用`strlen()`函数获取字符串的长度,并通过循环逐个输出字符数组中的元素。最终输出结果为:
```
String length: 13
H e l l o , w o r l d !
```
相关问题
c语言复制字符串转数组
在 C 语言中,要将字符串复制到数组中,可以使用标准库函数 `strcpy()`。下面是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello, World!"; // 原始字符串
char arr[20]; // 目标数组,需要预先分配足够的空间
strcpy(arr, str); // 将字符串复制到数组
printf("Copied array: %s\n", arr);
return 0;
}
```
在这个示例中,我们使用了 `strcpy()` 函数将 `str` 字符串复制到 `arr` 数组中。注意,目标数组 `arr` 需要预先分配足够的空间来存储复制后的字符串。
C语言 中文字符串字符、字符串转数组
在C语言中,中文字符串的字符编码一般采用UTF-8编码方式。为了能够正确地处理中文字符串,我们需要使用宽字符类型,如wchar_t。
字符串转数组可以通过使用strcpy函数来实现,该函数可以将一个字符串复制到另一个数组中。例如,可以使用以下代码将字符串s复制到数组a中:
```
char s[] = "Hello World!";
char a[20];
strcpy(a, s);
```
如果需要复制的是中文字符串,则需要使用wcsncpy函数,该函数可以将一个宽字符串复制到另一个数组中。例如,可以使用以下代码将宽字符串ws复制到数组wa中:
```
wchar_t ws[] = L"你好,世界!";
wchar_t wa[20];
wcsncpy(wa, ws, 20);
```
阅读全文