关于“conflicting types for ***“的问题
来源:互联网 发布:库里总决赛数据 编辑:程序博客网 时间:2024/05/29 13:21
问题描述:
在做一些小练习的时候经常会遇到如下方面的警告提示:
parameter.c:24: warning: conflicting types for ‘paratest’parameter.c:18: note: previous implicit declaration of ‘paratest’ was hereparameter.c:34: warning: conflicting types for ‘paraprintf’parameter.c:17: note: previous implicit declaration of ‘paraprintf’ was here
或者是这样子:
exercise.1.16.c:4: error: conflicting types for ‘getline’/usr/include/stdio.h:673: note: previous declaration of ‘getline’ was here
上面这两种问题究其本质,都是由于文件中定义的函数有矛盾。
情况一
当自定义的函数位于main函数之后,如果没有先在main函数之前进行函数声明,则main函数中所调用的自定义函数是默认返回值是int类型的,如果main函数后定义的函数是void类型就会提出警告,如上所示,但是如果不是void类型也不是int类型就会报错。如下则是将两个函数返回值一个定义成char类型,一个定义为void类型:
parameter.c:24: error: conflicting types for ‘paratest’parameter.c:18: note: previous implicit declaration of ‘paratest’ was hereparameter.c:34: warning: conflicting types for ‘paraprintf’parameter.c:17: note: previous implicit declaration of ‘paraprintf’ was here
解决办法:
其实很简单,只要在mian函数前先声明好使用的函数就可以了。
情况二
由于文件中自定义了一个函数getline,这个函数在/usr/include/stdio.h:673:已经进行了声明,即文章自定义的函数和头文件中声明的函数有矛盾,就会提示警告。
自己定义的getline函数声明如下:
int getline(char s[]);
stdio.h中的getline函数声明:
extern _IO_ssize_t getline (char **__restrict __lineptr, size_t *__restrict __n, FILE *__restrict __stream) __wur);
解决办法
将自己所定义的函数更改下函数名,如getline
更换为get_line
。
0 0
- 关于“conflicting types for ***“的问题
- 关于“error: conflicting types for 'function'”编译错误的分析
- 关于”error conflicting types for function”编译错误的分析
- 关于错误提示conflicting types for "XXX"
- conflicting types for 'timer_t' 的解决
- conflicting types for 'dev_t'的原因
- conflicting types for 'wchar_t'
- conflicting types for ...
- conflicting types for。。。。。。
- 关于 error: conflicting types for 'XXXX' 另一类分析
- jni编译问题:conflicting types for XXX (方法名)
- error: conflicting types for ‘getline’
- error: conflicting types for 'XXXX'
- conflicting types for xx错误
- error: conflicting types for 'XXXX'
- conflicting types for xx错误
- conflicting types for xx错误
- conflicting types for xx错误
- hdoj 1432 && poj 2606 Lining Up (多点共线)
- HDU1198Farm Irrigation(并查集)
- 一些PHP性能的优化
- SQL中UNION关键字的用法
- Leetcode no. 330
- 关于“conflicting types for ***“的问题
- ios视频保存Error Domain未知错误
- 第七周项目3-用多文件组织多个类的程序
- Git专题--Git客户端配置及使用
- 获取本周、本月、本季度、半年的时间
- mysql查看所有存储过程
- C++第3次作业
- Linux 内核源代码情景分析 chap2 存储管理 (6) --- 页面的定期换出
- 50款经典iPhone开源实例代码(附源代码下载)