簡單問題,為什麼同樣的代碼,結果不一樣呢??

sangzier 2003-08-22 02:17:52
代碼段1:

#include < iostream.h >

int s1 ( int & );

void main ( )
{
int x = 5;

cout << s1 ( x ) << endl;
cout << x << endl;
}

int s1 ( int &abc )
{
return abc *= abc;
}



代碼段2:

#include < iostream.h >

int s1 ( int & );

void main ( )
{
int x = 5;

cout << s1 ( x ) << endl << x << endl;
}

int s1 ( int &abc )
{
return abc *= abc;
}


代碼段1運行結果:
25
25


代碼段2運行結果:

25
5



菜鳥的問題來了,為什麼結果不一樣呢??
前3位答對者有分:))

...全文
60 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
sangzier 2003-08-22
  • 打赏
  • 举报
回复
謝謝大家的解答~~~~

請收分~~~
nirvana_li 2003-08-22
  • 打赏
  • 举报
回复
同意!
GhostAdz 2003-08-22
  • 打赏
  • 举报
回复
严重同意 sevecol(看什么看...)
第一个是先s1(x)再x,结果就是25,25
第二个是先(x)再s1(x)结果就是25,5
ppm07 2003-08-22
  • 打赏
  • 举报
回复
楼主执行下面一段程序的话就更能体会到楼上所说的了。
#include < iostream.h >

int s1 ( int & );

int s2 ( int &s )
{
return s=2;
}

void main ( )
{
int x = 5;

cout<< s1 ( x )<< endl<< s2(x)<<endl;
}

int s1 ( int &abc )
{
return abc *= abc;
}
Bandry 2003-08-22
  • 打赏
  • 举报
回复
这个代码并不是一样的啊
注意cout执行的顺序啊
sevecol 2003-08-22
  • 打赏
  • 举报
回复
第一个是先s1(x)再x,结果就是25,25
第二个是先(x)再s1(x)结果就是25,5
sangzier 2003-08-22
  • 打赏
  • 举报
回复
那麼解析完了執行不會影響結果嗎?
luohualiushui 2003-08-22
  • 打赏
  • 举报
回复
不错
先x,然后sl(x)
wbh0360 2003-08-22
  • 打赏
  • 举报
回复
cout << s1 ( x ) << endl << x << endl;
从右向左解析,然后从左向右执行,所以罗
5956 2003-08-22
  • 打赏
  • 举报
回复
能把解析执行的顺序说的具体点儿吗?
zhang,qiuping 2003-08-22
  • 打赏
  • 举报
回复
up,同意楼上的。
sevecol 2003-08-22
  • 打赏
  • 举报
回复
cout << s1 ( x ) << endl;
cout << x << endl;

cout << s1 ( x ) << endl << x << endl;
是有区别的。

注意解析执行的顺序。
内容简介: 设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。 本课程内容定位学习设计原则,学习设计模式的基础。在实际开发过程中,并不是一定要求所有代码都遵循设计原则,我们要考虑人力、时间、成本、质量,不是刻意追求完美,要在适当的场景遵循设计原则,体现的是一种平衡取舍,帮助我们设计出更加优雅的代码结构。本章将详细介绍开闭原则(OCP)、依赖倒置原则(DIP)、单一职责原则(SRP)、接口隔离原则(ISP)、迪米特法则(LoD)、里氏替换原则(LSP)、合成复用原则(CARP)的具体内容。 为什么需要学习这门课程? 你在日常的开发中,会不会也遇到过同样的问题。系统出现问题,不知道问题究竟出在什么位置;当遇到产品需求,总是对代码缝缝补补,不能很快的去解决。而且平时工作中,总喜欢把代码堆在一起,出现问题时,不知道如何下手,工作效率很低,而且自己的能力也得不到提升。而这些都源于一个问题,那就是软件设计没做好。这门课能帮助你很好的认识设计模式,让你的能力得到提升。课程大纲: 为了让大家快速系统了解设计模式知识全貌,我为您总结了思维导图,帮您梳理学习重点,建议收藏!

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧