variable `xxx' has initializer but incomplete type

本文详细解释了在内核编程中遇到的'variable 'touchkey_i2c_driver' has initializer but incomplete type'错误的原因及解决方法。主要涉及i2c_driver结构体的正确定义与使用,强调了头文件包含的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

说明xxx对应的类型没有找到,类型需要定义.


static struct i2c_driver touchkey_i2c_driver  =
{
.driver = {
.owner = THIS_MODULE, 
.name = "i2ctouchpannel",
},
.probe = &i2ctouchpannel_probe,
.remove = &i2ctouchpannel_remove,
.id_table = i2ctouch_pannel,
};

在调用内核已经定义好的结构体去初始化我们定义的变量的时候,

如出现 variable 'touchkey_i2c_driver' has initializer but incomplete type,其实就是说明touchkey_i2c_driver 没有被定义,进而说明是“i2c_driver 

没有被定义,更进一步,其实就是没有#include 相对应的头文件。


如#include <linux/i2c.h>之后,就不会出现variable 'touchkey_i2c_driver' has initializer but incomplete type

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值