goto语句使用一定要在判断中进行操作,如果再顺序语句中,随意的进行跳转,那么程序会具备极大的不确定性,比如前面定义了一个变量,后面值已经改变了,然后goto又跳转到定义处,那么这个变量是定义的值还是后面改变的值?代码量大,这就不好控制了,所以一定要约束goto语句。
#include<head.h>
#include<unordered_map>
#include<unordered_set>
#include<cstdlib>
//#include<stdlib.h> //C++风格引入的头文件一般前面以'c'开头,而C风格是'.h'
#include<ctime>
#include<math.h>
#include<memory> //定义了智能指针、allocator
#include<new> //定义了bad_alloc和nothro
#include<complex> //构造函数初始化语法,不引入好像也么有什么关系
//goto语句练习
int main()
{
cout << "请输入一个小写字母,我将给您转为大写字母:" << endl;
char a;
lininput:cin >> a;
if(a >= 97 && a <= 122)
{
a -= 32;
cout << (char)a << endl;
cout << "我还没有玩够,继续输入:" << endl;
goto lininput;
}
else
{
cout << "您输入的不符合标准,请重新输入:" << endl;
goto lininput;
}
return 0;
}
B站tiger老师原创。