如题所述
第1个回答 2023-03-13
可以使用C语言中的字符串函数strlen和strcpy来实现将字符串常量保存到字符数组中,并输出长度信息。具体代码如下:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 100
int main() {
const char str[] = "Hello, World!"; // 定义一个字符串常量
char arr[MAX_LEN]; // 定义一个字符数组
strcpy(arr, str); // 将字符串常量拷贝到字符数组中
int len1 = strlen(str); // 计算字符串常量的长度
int len2 = strlen(arr); // 计算字符数组的长度
printf("String constant: %s\n", str);
printf("String length: %d\n", len1);
printf("Character array: %s\n", arr);
printf("Array length: %d\n", len2);
return 0;
}
```
这段程序中,首先定义了一个字符串常量str和一个字符数组arr,其最大长度为MAX_LEN。然后使用strcpy函数将字符串常量拷贝到字符数组中。接着使用strlen函数分别计算字符串常量和字符数组的长度,并输出结果。
注意,在使用strcpy函数时需要确保目标字符数组有足够的空间存储源字符串,否则可能会导致缓冲区溢出等问题。因此,在实际应用中,需要根据实际情况来确定字符数组的长度。
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 100
int main() {
const char str[] = "Hello, World!"; // 定义一个字符串常量
char arr[MAX_LEN]; // 定义一个字符数组
strcpy(arr, str); // 将字符串常量拷贝到字符数组中
int len1 = strlen(str); // 计算字符串常量的长度
int len2 = strlen(arr); // 计算字符数组的长度
printf("String constant: %s\n", str);
printf("String length: %d\n", len1);
printf("Character array: %s\n", arr);
printf("Array length: %d\n", len2);
return 0;
}
```
这段程序中,首先定义了一个字符串常量str和一个字符数组arr,其最大长度为MAX_LEN。然后使用strcpy函数将字符串常量拷贝到字符数组中。接着使用strlen函数分别计算字符串常量和字符数组的长度,并输出结果。
注意,在使用strcpy函数时需要确保目标字符数组有足够的空间存储源字符串,否则可能会导致缓冲区溢出等问题。因此,在实际应用中,需要根据实际情况来确定字符数组的长度。