C++ 怎么使一个函数返回开始进行的地方与退出

例如我要录入一些人的资料 但是想录入完一个就返回主菜单那样 或者继续录入几个后返回主菜单 这个部分要怎么设计啊?

while循环,如下:
int j=1,select;
while(j!=0){
if(j==1){
//录入内容
}
else
break;
cout<<"继续请按1,退出请按0:";
cin>>select;
}
这样应该可以满足要求!
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-11-30
1、#include <stdio.h> 重复了,去掉一个。
2、strcpy等是在<string.h>里的,调用它要加上#include<string.h>
3、char *reduce_space(char p[]) ,你这个函数的返回值类型是char*,这个函数的最后一句return *str1;str1的类型就是char*了,无须再加一个*,把最后一句改为return str1;
至此,编译没有错误,会有一个小小的警告,也能运行,但结果不对。
你返回了一个局部变量的地址,但函数结束后局部变量被系统回收了,回到主函数时你虽然得到那块地址,但那个变量被系统回收了,那么那块地址的值是不可预料的。
结论:重写reduce_space函数,返回值类型为void,传递一个数组的地址过去,直接对数组进行操作。
我可以帮助你,你先设置我最佳答案后,我百度Hii教你。
第2个回答  推荐于2016-10-16
1、函数的返回值是通过函数中的return语句获得的。return语句将被调用函数中的一个确定值带回主调函数中去。
如果需要从被调用函数带回一个函数值(供主调函数使用),被调用函数必须包含return语句。如果不需要从被调用函数带回函数值,则可以不要return语句。
一个函数中可以有一个以上的return语句,执行到哪一个return语句,哪一个语句起作用。
return语句后面的括号可以要,也可以不要,如“return z;”与“return (z);”等价。return后面的值可以是一个表达式。例如:
int max(int x,int y)
{
return(x>y?x:y);
}
如果在主调函数中调用它,比如:
a=max(1,2)
那么函数max的return语句后面表达式的值就是2,也就是说max(1,2)=2,所以a=2

2、函数值的类型。既然函数有返回值,这个值当然应属于某一个确定的类型,应当在定义函数是指定函数值的类型。例如下面是几个函数的部首:
int max(float x,float y);//函数值为整型
char letter(char c1,char c2);//函数值为字符型
double min(int x,int y);//函数值为双精度型
void change(int a);//函数值为空

3、如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准,即函数类型决定返回值的类型。对数值型数据,可以自动进行类型转换。特别提一提void类型,如果一个函数的类型为void,那么,即使函数中有return语句且return语句中表达式的值不为空,返回值仍为空,严格满足函数类型决定返回值的类型。
第3个回答  2010-11-30
用循环实现呀
建议用IF ELSE 语句

C++ 怎么使一个函数返回开始进行的地方与退出
while循环,如下:int j=1,select;while(j!=0){ if(j==1){ \/\/录入内容 } else break;cout<<"继续请按1,退出请按0:";cin>>select;} 这样应该可以满足要求!

C++怎么实现函数返回
usingnamespacestd;intHaveFun(){ intSum=0;for(intvar=200;var<=300;var++){ boolisPrime=1;for(intfac=2;fac*fac<=var;fac++)if(!(var%fac))isPrime=0;if(isPrime)Sum+=var;} returnSum;} intmain(){ cout<<HaveFun()<<endl;return0;...

C++中,return 0 和 return -1有什么区别,程序运行到该语句时会不会产 ...
与C语言不同,C++的main函数返回类型既可以是void,也可以是int,但C++的设计者更主张程序员们用int作为main函数的返回类型,所以main执行完后应该返回一个整数告诉操作系统程序执行的情况。只要是一个整数就行,就像一般的函数一样,return表示函数结束,在main中return一个整数之后,main函数执行完毕,也即...

关于 函数返回值储存和栈的问题
函数的返回值在c\/c++里面是通过eax来返回的,比如return 1,那么1被存入eax,然后main里通过eax来获取这个值,局部变量的值也是一样的。

C++怎样从一个函数内跳出直接进入另一个函数?
用break语句,而且在该程序要加上个循环语句(while(1)),无限循环显示主菜单。break简介:break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;如果没有break语句,则会从满足条件的地方(即与switch(表达式)括号中表达式匹配的case)开始...

C++让函数return之后再运行函数内的一段代码
在上述代码中,我们定义了一个`MyResource`类,其中包含`start`和`end`方法分别用于开始和结束操作。在`main`函数中,我们调用`myFunction`函数并在其返回后调用`resource.end`,从而确保了资源在函数退出前得到正确清理。通过这种方式,我们可以确保函数在return后仍然执行必要的清理操作,从而避免资源泄露...

C++如何从一个函数内部跳出来直接进入另一个函数并且从头开始运行?
void Add(){ ...case 5:break; \/\/ 直接break就可以。} } void MainMenu(){ int a;bool exitFlag = false;do { cout<<"***公 司 人 员 管 理 系 统***"<<endl;cout<<" 1. 显 示 人 员 信 息"<<endl;cout<<" 2. 查 找 人 员 信 息"<<endl;cout<<" 3....

C++程序string类型的函数如果要中途退出,返回值应该怎么设置?
一般是调用的函数执行时发现问题,且不能正常继续处理,必须中途退出,由于函数必须返回一个string类型,这个时候就返回一个0值即NULL值,意思返回的数据无效。在函数返回后,你要做的是首先判断返回值是否为0,如果是0,表明调用的函数失败,做相应的失败处理。如果不做这个事,就会发生程序异常。如果函数...

c++ 求退出循环,退出子程序,退出主程序函数
退出循环: break 退出子程序: return 退出码; 退出主程序: exit(0); 睿腾编程.网returnbc 其中exit(0);函数所在的头文件是: stdlib.h 本回答由电脑网络分类达人 汪正茂推荐 举报| 答案纠错 | 评论 3 1 returnsr 采纳率:50% 来自团队:C* 擅长: C\/C++ VC++ 数据库DB JAVA相关 数据结构及算法 其他...

C++ 中 return是返回到哪一个地方去了 请说的详细一点 谢谢
在被调用函数中,如果碰到return 语句,那么程序就会返回调用该函数的下一条语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。但是如果是在主函数中碰到return语句,那么整个程序就会停止,退出程序的执行。

相似回答