gpt4 book ai didi

c 编译器有一个函数卡在其命名空间中(也许?)。苹果

转载 作者:行者123 更新时间:2023-11-30 20:50:32 29 4
gpt4 key购买 nike

一周前,我在代码中编写了一个名为 getline 的函数,但该函数不起作用。从那时起,每当我将函数命名为 getline 并尝试编译它时,它都不起作用。如果我将函数名称更改为其他名称,它会再次起作用。我已经重新启动了计算机(尽管实际上不需要这样做)。我怎样才能取回这个命名空间?

错误消息示例:

Numens-MBP:c examples mycotic$ cc testing.c
testing.c:9:5: error: conflicting types for 'getline'
int getline(void);
^
/usr/include/stdio.h:448:9: note: previous declaration is here
ssize_t getline(char ** __restrict __linep, size_t * __restrict __lineca...
^
testing.c:13:1: warning: type specifier missing, defaults to 'int'
[-Wimplicit-int]
main()
^
testing.c:20:24: error: too few arguments to function call, expected 3, have 0
while ((len = getline()) > 0)
~~~~~~~ ^
/usr/include/stdio.h:448:1: note: 'getline' declared here
ssize_t getline(char ** __restrict __linep, size_t * __restrict __lineca...
^
testing.c:36:5: error: conflicting types for 'getline'
int getline(void)
^
/usr/include/stdio.h:448:9: note: previous declaration is here
ssize_t getline(char ** __restrict __linep, size_t * __restrict __lineca...
^
1 warning and 3 errors generated.

最佳答案

getline()是标准C 库函数。您的函数与标准库中的定义冲突。

为您的函数选择另一个名称。这张已拍摄。

关于c 编译器有一个函数卡在其命名空间中(也许?)。苹果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44610122/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com