gpt4 book ai didi

c - 函数原型(prototype)给出未找到警告

转载 作者:行者123 更新时间:2023-11-30 15:03:02 25 4
gpt4 key购买 nike

我正在用C语言编写一个简单的与数据结构相关的平衡括号程序。这是我的函数原型(prototype)及其相应的方法体:

int IsBracketBalanced(char[]);

int IsBracketBalanced(char bracketSequence[1000])
{
char stack[1000];
int isBracketBalanced = 1;

//do something here

return isBracketBalanced;
}

但是 Visual Studio 在函数原型(prototype)下方显示绿色波浪线,并显示警告:

Function definition for 'IsBracketBalanced' not found.

我的签名是不是因为字符数组参数有问题?我在 Visual Studio 2015 上用 C 语言编写了这段代码,操作系统为 Windows 7。

最佳答案

它们不是完全相同的原型(prototype),这可能会让代码分析器感到困惑,只需使用

int IsBracketBalanced(char *, size_t);

相反,当然

int IsBracketBalanced(char *bracketSequence, size_t size)

并将大小作为参数传递,避免了许多问题。许多库函数(例如 gets())最终被重写以使用这种原型(prototype)。

毕竟您无法利用该函数采用数组的事实,因为无论如何它都会转换为指针,因此使用char []没有任何好处也许除了可读性。

关于c - 函数原型(prototype)给出未找到警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40878464/

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