求助!关于C函数调用的一些疑问点
#include<stdio.h>void printstar()
{
printf("*****\n");
}
void print_message()
{
printf("Hello World!\n");
}
int add(int a,int b)
{
return a+b;
}
char intToChar(int a)
{
return (char)a;
}
int main()
{
printstar();
print_message();
printstar();
int a=add(3,4);
printf("%d",a);
char b=intToChar(65);
printf("%c",b);
getchar();
}
1.在以上程序中,是可以运行成功的,但是如果把main函数与自定义函数调换位置,也就是说把main函数放在开头,同样的代码发现运行不了,报错的地方有8处之多(报错内容太多了无法整上来,其中有一条是说printstar第一次使用未声明),我用的编译器是Dev C++,不知这个异常是否是编译器导致?
2.上面的自定义函数printstar()与print_message()中是不会传递值的,但是在不传递值的情况下为什么不给函数定义标示符类型就无法运行呢?我在调试的过程中在这两个在函数之前加上void才可以的,为什么呢?
3.弱弱的问哈,实参是否可以是常量?
4.假若实参与形参数据类型不一致的的时候,应该以哪个为主进行转换?
5.实参与形参的值是否可以双向传递,就是说它们的值可否互相传递?