return语句的返回值是什么意思

hzx9370 2015-08-08 11:32:03
我看有时候返回的是return(1),有时是个变量名,是返回给被掉函数么,是自定义函数么
...全文
846 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ligand 2015-08-09
  • 打赏
  • 举报
回复
所谓函数的返回值,在编译器生成的汇编实现层面看,一般是被调函数在返回前,最后放到EAX寄存器中的值。函数调用者读取EAX,就得到了所谓的函数返回值。 如果函数的返回值的size大于了EAX的size怎么办? 例如函数按值返回一个class/struct,其size较大。 编译器当然自有安排,一般是在调用函数之前就在栈上留出一块临时空间用于存放返回值。 从C语言时代沿袭的传统,函数返回0表示调用成功;函数返回非0表示调用有错误。当然你也可以不这么做。
lm_whales 2015-08-08
  • 打赏
  • 举报
回复
return 返回的值,就是函数调用的结果 C,C++的函数调用构成, 函数调用表达式, 这个表达式的结果,就是函数返回值 返回 什么,由函数的设计者,编码者决定。
急了急了 2015-08-08
  • 打赏
  • 举报
回复
返回给调用函数的 如果是return 1的话可能返回的是bool值 这样可以进行条件判断
paschen 版主 2015-08-08
  • 打赏
  • 举报
回复
return 1 就是返回1 return a 就是返回a的值 返回给该函数的调用者,例如:

int sum(int a, int b)
{
     return a+b;
}
上面函数返回的是a+b之后的值,如果你写int s = sum(1,2),就会得到s为3
wafstudio 2015-08-08
  • 打赏
  • 举报
回复

int age()
{
	return 10;
}

string name()
{
	string n = "名字";

	return n;
}


int _tmain(int argc, _TCHAR* argv[])
{
	return 0;

	int a = age();

	string n = name();
}

64,662

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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