提问人:Burhan Aijaz 提问时间:1/1/2023 更新时间:1/1/2023 访问量:185
如何在 C 中使用 getline 函数?[复制]
how can I use getline function in c? [duplicate]
问:
我正在尝试使用 getline() 函数。我想我使用的语法是正确的,而且我还包含了 #include< stdio.h> 头文件。尽管如此,它仍然显示 [Error] 'getline' 未在此范围内声明
这是我的代码
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
char *str;
int bytes_read;
int size=10;
printf("please enter a string");
str=(char *)malloc(size);
bytes_read=getline(&str,&size,stdin);
puts(str);
}
答:
0赞
Ali Ghelichkhani
1/1/2023
#1
getline 是一个 POSIX 函数,而 Windows 不是 POSIX,因此它没有一些可用的 POSIX C 函数。
您需要定义功能宏_GNU_SOURCE,以便使其可用于您的代码。
#define _GNU_SOURCE
评论
getline()
pacman
int size
需要 .由于要将其地址传递给 ,因此它必须具有正确的大小。size_t size
getline
malloc
的结果(或任何返回的函数)。getline
str
NULL
size
0
getline
void *