当前位置: 代码迷 >> C语言 >> 我错了还是老师错了?
  详细解决方案

我错了还是老师错了?

热度:398   发布时间:2007-08-02 18:11:41.0
11111111111
----------------解决方案--------------------------------------------------------
*a *b  我还没看到指针 那里 * 好像是指针那一章吧 我要加油看书了
----------------解决方案--------------------------------------------------------
我认为,你还是加上返回值,这样一来对你做测试有好处.从软件工程来说,你的程序还是有问题的.
----------------解决方案--------------------------------------------------------

你和老师都没有错,c语言(其他高级语言也一样),必须转换成机器语言才可以执行,调用函数时的返回值通常存放在AX寄存器中(Intel80x86),你的程序也许在sum=*x+*y的运算中用ax存放sum的值,所以无论是否有return sum ,ax中都是sum,......


----------------解决方案--------------------------------------------------------

经查阅相关资料,还是应该加上return!


----------------解决方案--------------------------------------------------------


int myadd (int *a,int *b)
{int sum;
sum=*a + *b;
return sum;
}
main()
{
int x,y,z;
printf("Enter x,y:");scanf("%d%d",&x,&y);
z=myadd(&x,&y);
printf("%d+%d=%d\n",x,y,z);
}

返回的值的类型肯定要确定好拉
你再试试看 可以不?


----------------解决方案--------------------------------------------------------

我的回答是:
Q: 用什么开发环境学习C/C++语言?
A1: DevC++ 4.9.9.0
A2: MinGW Studio 2.06
A3: VIM+Cscope+Ctags+Taglist+make+GCC+GDB
A4: Emacs+GCC+GDB
A5: Eclipse+CDT+GCC+GDB
A6: C++ Builder
A7: Visual C++.net
A8: LCC (只能用于C语言)

Q: 为什么不推荐Turbo C(win TC)
A: 等你入门的时候就明白了。


----------------解决方案--------------------------------------------------------
楼上的能不能说的再明白一点,是win tc造成的问题吗?

----------------解决方案--------------------------------------------------------
int 好象只是说明 main 的类型。。。
系统默认了。。
return 必须要有,,,,
不然它怎么知道你要返回什么。。。。
----------------解决方案--------------------------------------------------------
还真是,用tc就能编;用vc就不行。怎么个意思?
----------------解决方案--------------------------------------------------------
  相关解决方案