我正在使用指针,而strlen函数正在触发“strlen应该有原型”的错误
答案 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的更多信息。