我使用c制作编译器程序,但strlen函数要求原型

时间:2018-01-28 17:22:20

标签: turbo-c

我正在使用指针,而strlen函数正在触发“strlen应该有原型”的错误

1 个答案:

答案 0 :(得分:0)

原型是签名,或者换句话说就是函数的声明,以告诉编译器类似退出的内容。编译器在调用时假定定义可能在某个调用位置之下。这给原型带来了错误。请考虑以下代码模板进行解释。

static void Main(string[] args)
{
    string menuCommand = "cmd /k CertUtil -hashfile \"%1\"";
    Register("*", "HashFile", "Create Hash", menuCommand);
}

上面的代码将给出相同的错误。尽管在代码中存在函数fun的定义。在您的程序中,您可能已经调用了void fun(); //declaration/prototype void main(){ ... fun(); //calling ... } void fun(){ ... } 函数,但是要使用它,您必须包括string.h头文件。

strlen

在文件的开头将这一行包含在程序中。您可以从here了解有关函数原型的更多信息,并可以从here了解有关strlen的更多信息。