在C语言中,可以使用指针来输入字符串。以下是一种常见的方法:
#include <stdio.h>
int main() {
char str[100]; // 声明一个字符数组来存储字符串
char *ptr = str; // 声明一个指针,并将其指向字符数组的首地址
printf("请输入字符串:");
scanf("%s", ptr); // 使用scanf函数输入字符串,并将其存储到字符数组中
printf("输入的字符串为:%s\n", ptr);
return 0;
}
上面的示例中,我们首先声明了一个大小为100的字符数组str
,用于存储输入的字符串。然后,我们声明了一个指针ptr
,并将其指向该字符数组的首地址。接下来,使用scanf
函数输入字符串,并将其存储到字符数组中。最后,使用printf
函数输出输入的字符串。
需要注意的是,使用scanf
函数输入字符串时,如果字符串中包含空格,则只会读取空格之前的部分。如果需要读取包含空格的整个字符串,可以使用fgets
函数。
#include <stdio.h>
int main() {
char str[100];
printf("请输入字符串:");
fgets(str, sizeof(str), stdin);
printf("输入的字符串为:%s\n", str);
return 0;
}
在上面的示例中,我们使用fgets
函数输入字符串,并指定了最大读取字符数为sizeof(str)
,以防止字符串溢出。