C语言中的getline函数用于从标准输入流中读取一行字符,并将其存储到指定的字符数组中。它会一直读取字符,直到遇到换行符为止。
getline函数的原型如下:
ssize_t getline(char **lineptr, size_t *n, FILE *stream);
参数说明:
getline函数的返回值为读取到的字符数,如果读取失败或到达文件末尾,则返回-1。
使用getline函数可以实现连续接受输入,即在换行符之后继续接受输入。示例代码如下:
#include <stdio.h>
#include <stdlib.h>
int main() {
char *line = NULL;
size_t len = 0;
ssize_t read;
printf("请输入多行文本(以空行结束):\n");
while ((read = getline(&line, &len, stdin)) != -1) {
if (read > 1) { // 忽略空行
printf("您输入的内容是:%s", line);
} else {
break; // 遇到空行结束循环
}
}
free(line);
return 0;
}
上述示例代码中,通过循环调用getline函数来连续接受输入,直到遇到空行为止。每次读取到的非空行都会被打印出来。注意,在使用完getline函数后,需要使用free函数释放动态分配的内存。
推荐的腾讯云相关产品:无
领取专属 10元无门槛券
手把手带您无忧上云