c语言中,为什么总是说我自定义函数的调用的参数太少

2024-11-02 14:19:26
推荐回答(2个)
回答1:

首先要知道Dev-C++只是一个IDE。它并不自己实现编译器,而是默认搭配MinGW版GCC编译器。When C doesn't find a declaration, it assumes this implicit declaration: int f();, which means the function can receive whatever you give it, and returns an integer. If this happens to be close enough (and in case of printf, it is), then things can work. In some cases (e.g. the function actually returns a pointer, and pointers are larger than ints), it may cause real trouble。

GCC只是默认还允许implicit function declaration功能而已,较新的C规范(C99、C11)是不允许不声明直接用的。

回答2:

你定义了几个参数就要使用几个参数
例如
定义 void dingyi(char aaa,char bbb)

使用时如果只是这样
dingyi(0x11);
就会提示 错误 因为少了一个参数