采用指针方法,输入字符串,在复制字符串后输出
时间: 2024-02-22 07:59:35 浏览: 57
好的,可以使用指针方法来实现字符串的复制和输出。下面是示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char str1[100], *str2; // 定义两个字符串,一个是数组,一个是指针
printf("请输入字符串:");
fgets(str1, 100, stdin); // 从标准输入读取字符串
// 动态分配内存,用于存储复制后的字符串
str2 = (char*)malloc((strlen(str1) + 1) * sizeof(char));
if(str2 == NULL)
{
printf("内存分配失败!\n");
exit(1);
}
// 复制字符串
strcpy(str2, str1);
// 输出复制后的字符串
printf("复制后的字符串为:%s", str2);
// 释放内存
free(str2);
return 0;
}
```
在这个示例代码中,我们首先使用 `fgets()` 函数从标准输入读取字符串,并将其存储在数组 `str1` 中。然后,我们使用 `malloc()` 函数动态分配内存,用于存储复制后的字符串,并将其地址赋给指针 `str2`。接着,我们使用 `strcpy()` 函数将原始字符串复制到新的内存空间中。最后,我们输出复制后的字符串,并使用 `free()` 函数释放内存。
阅读全文