#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char* buffer = malloc(100 * sizeof(char));
size_t n = 3;
getline(&buffer, &n, stdin);
printf("%s\n", buffer);
free(buffer);
}
我以为getline
,0 size_t *n
中的第二个参数是限制读取的字符数。但是当我用更大的输入尝试时,它仍然读取所有的输入。我在手册页和在线搜索,但无法找到答案。有谁能为我解释吗?getline中第二个参数的用途是什么?
仔细阅读文档主要有助于。 – alk