function declaration isn't a prototype

时间:2022-05-03 19:43:53
warning: function declaration isn't a prototype
warning: function  declaration isn't a prototype
出现此警告原因:
1: 函数没有声明。在你调用的这个函数前面加上该函数的定义即可。
main()
{
test();
}
test (int a)
{
printf("test: %d\n", a);
}
这个代码中如果在main函数前面加上“test (int a);”就可以正确运行了
2:
#include 
#include 
#include 
#include 
static int hello_init_module(void)
{
    printk("Hello, world - this is the kernel speaking\n");
    return 0;
}
/* Cleanup - undid whatever init_module did */
static void hello_cleanup_module(void)
{
    printk("Short is the life of a kernel module\n");
}
module_init(hello_init_module);
module_exit(hello_cleanup_module);
上面代码是内核中的一个模块, 如果 static int hello_init_module(void)  括号里面没有加void就会出现此警告。

尊重他人劳动成果:
本文来自ChinaUnix博客,如果查看原文请点: http://blog.chinaunix.net/u2/83842/showart_1751695.html