label 's' was undefined

#include <iostream>
using namespace std;
void one()
{
int x;
s:
system("cls");
cout<<"Type a number for running:";
cin>>x;
if (x<=12 && x>0)
{
int sum=0;
for(sum=x;x-1==0;--x)
{
sum*=(x-1);
};
cout<<sum<<endl;
}
else cout<<"输入的数字不是12以内的正整数"<<endl;
};
int main(){
int choice=0;
cout<<"Chose the function and type the number"<<endl;
cout<<" 1. "<<endl;
cin>>choice;
switch(choice){
case 1:
one();break;
default:
cout<<"Unknown number"<<endl;
goto s;}
system("pause");
return 0;
}

--------------------Configuration: Text1 - Win32 Debug--------------------
Compiling...
453.cpp
C:\Documents and Settings\Administrator\桌面\453.cpp(7) : warning C4102: 's' : unreferenced label
C:\Documents and Settings\Administrator\桌面\453.cpp(35) : error C2094: label 's' was undefined
执行 cl.exe 时出错.
Text1.exe - 1 error(s), 0 warning(s)

怎么回事……
怎么改才能实现功能?

goto 语句不能跨函数。
只能在同一个函数中
{
s:
代码;
goto s;
}追问

那要怎么改才能实现功能?

追答

按你的逻辑,应该是输入错误的指令,跳转到让它重新输入指令。但是你的指令选择只有1.

#include <iostream>

using namespace std;

void one()

{

 int x;

 system("cls");

 cout<<"Type a number for running:";

 cin>>x;

if (x<=12 && x>0)

{

int sum=0;

for(sum=x;x-1==0;--x)

{

sum*=(x-1);

};

cout<<sum<<endl;

}

else cout<<"输入的数字不是12以内的正整数"<<endl;

};

int main(){

int choice=0;

s://跳转到这里重新提示输入
cout<<"Chose the function and type the number"<<endl;

cout<<"    1.      "<<endl;

cin>>choice;

switch(choice){

case 1:

one();break;

default:

 cout<<"Unknown number"<<endl;

 goto s;}

system("pause");

return 0;

}

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-10-17
你的s:放在one函数体内,而goto s:放在main函数体内追问

那要怎么改才能实现功能?

label 's' was undefined
goto 语句不能跨函数。只能在同一个函数中 { s:代码;goto s;}

C语言中的undefined
意思是你使用这个对象之前没有将之实例化。例如:Label l = new Label;这个是已经实例化了,可以对其成员进行操作。注意实例化是调用构造方法要加括号。如果你是Label。那下面如果你调用l.Text之类的属性,那就会出现你那个错误。解决方法:1、用VS.NET2003或VS.NET2005(主要看这个程序工程,你原...

Latex中常见的警告信息及其处理方法
15. There were multiply-defined labels和There were undefined references或citations分别指出重复定义书签名和未定义引用,检查并修正。16. Unused global option(s)说明文档使用了全局选项但未发挥作用,确认选项适用性。17. You have requested release ‘...’ of LaTeX但只支持‘...’版本,确保使...

求c++错误代码的中文解释!!!
Unable to open input file ''xxx'' ---无法打开输入文件xxx Undefined label ''xxx'' ---没有定义的标号xxx Undefined structure ''xxx'' ---没有定义的结构xxx Undefined symbol ''xxx'' ---没有定义的符号xxx Unexpected end of file in comment started on line xxx ---从xxx行开始的注解尚未结束...

ASM程序有错误,如何解决
很明显的错误提示啊。SYNTAX ERROR:语法错误 ATTEMPT TO DEFINE AN ALREADY DEFINED LABEL:重复定义标签 UNDEFINED SYMBOL :变量没定义。这些都是很常见的错误了啊,你定位到错误行仔细检查。如有问题将代码文件发到 zjtnull@163.com

...的书签有距离限制么?错误显示:Error: This label is undefined...
不是距离的问题,你把标号111放在不同的程序段里了,这是fortran不允许的。

c语言goto语句的问题。
错误 C233: 'a': undefined label,意思是:标签a:未定义(就使用)。可试试把label a的定义放到引用的前边。main(){ Initialize(); a: switch(xz) case 1: while(1) { led_1(); }}void key_1() interrupt 10 { xz++; goto a;}在VC6下这样编译可以通过。另...

c语言编程中出现的纠错英文语句是啥意思?
Undefined label 'xxxxxxx' (标号'xxxxxxx'未定义) Undefined structure 'xxxxxxxxx' (结构'xxxxxxxxxx'未定义) Undefined symbol 'xxxxxxx' (符号'xxxxxxxx'未定义) Unexpected end of file in comment started on line #(源文件在某个注释中意外结束) Unexpected end of file in conditional stated on line # ...

undefined statement label的意思
undefined statement label 英 [ˌʌndɪˈfaɪnd ˈsteɪtmənt ˈleɪbl] 美 [ˌʌndɪˈfaɪnd ˈsteɪtmənt ˈleɪbl]【计】未定义语句标号 ...

echarts设置图例颜色和地图底色的方法实例
'iphone3', type: 'map', mapType: 'china', selectedMode:'single', roam: true, showLegendSymbol:true, itemStyle:{ normal:{ label:{show:true} ,areaStyle:{color:'green'} \/\/设置地图背景色的颜色设置 ,color:'rgba(255,0,255,0.8)' \/\/刚才说的图例颜色设置 }, emphasis:{label:...

相似回答