当前位置: 代码迷 >> C语言 >> Void 的问题(函数指针返回)
  详细解决方案

Void 的问题(函数指针返回)

热度:335   发布时间:2007-10-29 22:07:20.0
Void 的问题(函数指针返回)
下面的代码来源 C程序设计 (第3版)
当我编译的时候(DEV-C++)出现错误
3 C:\\测试\练习2.cpp `main' must return `int'
当我把main函数前面的 Void去掉,编译就能成功,请问这是为什么啊。。。。。。。
我看这本书上写的, 一般Void写上比较好么。。。而且书上例题,难道错了????
请老师们给我个答案啊
#include <stdio.h>
void main()
{ float score[][4]={{60,70,80,90},{56,45,65,23},{76,56,68,44}};
float *search(float (*pointer) [4],int n);
float *p;
int i,m;
printf("enter the number of student: ");
scanf("%d", &m);
printf("The scores of No. %d are: \n",m);
p=search(score,m);
for (i=0;i<4;i++)
printf("%5.2f\t", *(p+i));
printf("\n");
}
float *search (float (*pointer)[4],int n)
{
float *pt;
pt = *(pointer+n);
return(pt);
}
搜索更多相关的解决方案: Void  函数  指针  main  

----------------解决方案--------------------------------------------------------
main 默认为int 型,即 int main(), 返回整数。
注意,新标准不允许使用默认返回值,即int不能省,而且对应main函数不再支持void型返回值,因此为了使程序有很好的移植性,强烈建议使用:
int main()
{
return 0; /* 新标准主函数的返回值这条语句可以省略 */
}
main 函数的返回值应该定义为 int 类型,C 和 C++ 标准中都是这样规定的。虽然在一些编译器中,void main 可以通过编译(如 vc6),但并非所有编译器都支持 void main ,因为标准中从来没有定义过 void main。
dev-c++可能就不支持void main
----------------解决方案--------------------------------------------------------
谢谢。。。。 版主,我们还是老乡呢,我也是沈阳的。。。 怪丢人的,菜鸟一只。。。呵呵

非常感谢
----------------解决方案--------------------------------------------------------
回复:(cycchina)谢谢。。。。 版主,我们还是老乡...
哈哈,这么巧。我也没学多久,大家一同进步啊

----------------解决方案--------------------------------------------------------
c99中,主函数只有两种写法:
1、
int main(void)
{
return 0;
}
2、
int main(int argc, char *argv[])
{
return 0;
}
c++98中,
int main()
{
return 0;
}
第二种和c99中的相同。

[此贴子已经被作者于2007-10-30 10:47:46编辑过]


----------------解决方案--------------------------------------------------------
VOID MAIN从来都不是合法的
----------------解决方案--------------------------------------------------------
  相关解决方案