PDA

View Full Version : سوال: سوال: چگونه از دستور goto از بیرون تابع استفاده کنیم ++C



Hamed_razor
چهارشنبه 24 تیر 1394, 17:52 عصر
سلام

می خواستم بدونم که میشه مثلا توی تابع main یک خطی رو مشخص کزد به اسم Loop و بعد از توی تابعی به اسم Two اومد از Loop که توی تابعه main هست دوباره دستورات رو اجرا کرد

rahnema1
چهارشنبه 24 تیر 1394, 18:39 عصر
سلام

می خواستم بدونم که میشه مثلا توی تابع main یک خطی رو مشخص کزد به اسم Loop و بعد از توی تابعی به اسم Two اومد از Loop که توی تابعه main هست دوباره دستورات رو اجرا کرد

سلام
کاش بهتر توضیح می دادید چیکار می خواهید بکنید. چون بدون استفاده از goto هم کد خواناتر می شه و ابزارهای دیگه هم به خوبی می تونن مورد استفاده قرار بگیرند که نیازی به این جهش ها نباشه

Hamed_razor
چهارشنبه 24 تیر 1394, 19:52 عصر
ببینید من یک سوال می پرسم توی main بعد شرط اجرا میشه میره اون تابع مورد نظر اجرا میشه حالا بعد از اجرا شدن اون تابع دوباره بیاد توی main اون سوال رو به پرسه !

اوکی ؟؟

rahnema1
چهارشنبه 24 تیر 1394, 21:23 عصر
مثلا یه حلقه میذاریم و در صورت برقراری شرط break می کنیم

void func1(){}
int main()
{

while(1)
{
func1();
//if .... break;
}
}

Hamed_razor
چهارشنبه 24 تیر 1394, 22:29 عصر
نه آقا این نمیشه




void Two(){
int x;
system("cls");
cout << "Please Enter True Number : ";
cin >> x;


if(x % 2 == 0)
cout << "Zoj" << endl;
else
cout << "Fard" << endl;


}


void Three(){
system("cls");
cout <<"int x,y; \ndouble ch,d;\nconst unsigned int k = 20;";
}


int main(){
int q = 0;
cout << "Kodam Barname ? : ";
cin >> q;
switch(q){
case 2 :
Two();
break;
case 3 :
Three();
break;
}
getch();
return 0;
}




الان از کاربر می پرسه که کدوم برنامه رو می خوای مثلا میگه 2 میره تابع Two اجرا میشه بعد از این که تابع Two اجرا شد بیاد دوباره توی main به پرسه کدوم برنامه؟ حالا من کد شما رو تست نه کردم ولی فکر نمی کنم اوکی بشه

rahnema1
چهارشنبه 24 تیر 1394, 22:44 عصر
خب این سوال فکر کنم تعداد زیادی پرسیده شده باشه هم تو این سایت و هم سایتای دیگه. مثلا اگه کاربر دکمه 1 را زد خارج بشه البته این از مواردی هست که خود stroustrup هم کاربرد goto را بلا اشکال دونسته

int main(){
int q = 0;
while(1)
{
cout << "Kodam Barname ? : ";
cin >> q;
switch(q)
{
case 1:
break;
case 2 :
Two();
continue;
case 3 :
Three();
continue;
}
break;
}
getch();
return 0;
}


می تونید goto هم بذارید

int main(){
int q = 0;
while(1)
{
cout << "Kodam Barname ? : ";
cin >> q;
switch(q)
{
case 1:
goto EXIT;
case 2 :
Two();
break;
case 3 :
Three();
break;
}
}
EXIT:;
getch();
return 0;
}