warning: assignment makes pointer from integer without a cast

本文介绍了解决编译过程中出现的警告“assignment makes integer from pointer without a cast”及伴随的错误的方法。主要通过在文件头部添加未声明的函数声明来解决此类问题。

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

有时候我们编译一个很大的程序的时候(特别是在移植别人的代码)总是会出现这样的一个报错: 

warning: assignment makes pointer from integer without a cast

然后就跟着几个error 冲突的类型..... xxx函数。

如下:


Compile thumb : ipsecvpn <= /android-ndk-r4-crystax/samples/AndroidIPsecvpn_12/jni/lib/optionsfrom.c

/android-ndk-r4-crystax/samples/AndroidIPsecvpn_12/jni/lib/optionsfrom.c: In function 'getanarg':

/android-ndk-r4-crystax/samples/AndroidIPsecvpn_12/jni/lib/optionsfrom.c:171: warning: assignment makes pointer from integer without a cast

/android-ndk-r4-crystax/samples/AndroidIPsecvpn_12/jni/lib/optionsfrom.c: At top level:

/android-ndk-r4-crystax/samples/AndroidIPsecvpn_12/jni/lib/optionsfrom.c:237: error: conflicting types for 'getline'

/android-ndk-r4-crystax/samples/AndroidIPsecvpn_12/jni/lib/optionsfrom.c:171: note: previous implicit declaration of 'getline' was here

/cygdrive/e/ANDROID/android-ndk-r4-crystax/build/core/build-binary.mk:169: recipe for target `

/android-ndk-r4-crystax/samples/AndroidIPsecvpn_12/obj/local/armeabi/objs/ipsecvpn/lib/optionsfrom.o' failed


这个原因是在你调用谋个函数之前没有去声明这个函数。

解决方法:在这个文件头加个所调用函数的声明 , 或在某个头文件中去加个声明即可! 

如: 

static char* getline(FILE*, char*, size_t);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值