#includestdio.h
创新互联是一家集网站建设,嘉峪关企业网站建设,嘉峪关品牌网站建设,网站定制,嘉峪关网站建设报价,网络营销,网络优化,嘉峪关网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
int print();
void main(){
printf("%d\n",print());
return 0;
}
int print(){
return 1.1;
}
C语言怎么规定我倒是不知道,我上VC测试了一下,还真不报错,下面是运行结果
结果是1,也就是说按照定义的返回值类型来的。
1、ANSI C语言标准,明确规定 数组类型和函数类型不可以做为返回值。
解决这种返回值的方法是通过指针来间接返回,即使用数组指针和函数指针。这可以做为c语言引入指针的另一个理由。
2、字符串是数组的一种,是字符数组,所以同样不可以作为返回值。
3、结构体类型可以做为返回值,C语言设计者当时引入struct结构体的概念,目的是为了增加一种建立C语言新类型的机制, 换句话说它希望通过struct建立的类型,像内置的int float类型一样使用方便。
在C/C++中,一个函数可以有返回值,也可以没有。
如果没有,在最新的C/C++标准中都规定了必须声明为void而不能省略。比如:
void Dosomething( int* p )
{ *p = 100;}
当然也可以有返回值,比如返回int ,或者返回double,也可以是自定义的类型,比如:
int max( int a, int b )
{ return ab ? a:b;
}
又比如C++中
string GetName()
{ return string("haha");
}
这个在函数前面的标识符就是类型的声明,通常在函数中,我们都必须return这种指定类型的一个对象。
当然,void除外。
建议你多看看教材。