PDA

View Full Version : سوال: تعیین کاراکتر نهایی هنگام استفاده از تابع gets(str)



yalda.night
جمعه 02 تیر 1391, 19:42 عصر
سلام
من چطور ميتونم براي تابع gets(str) تعريف كنم كه به جاي كاراكتر enter براي انتهاي رشته كاراكتر ديگه‌اي رو بگيره؟

مسعود اقدسی فام
جمعه 02 تیر 1391, 20:17 عصر
با gets تا جایی که من می‌دونم نمی‌شه همچین کاری کرد. اما با cin.get و cin.getline یه کارایی می‌شه کرد. البته شاید اونی نشه که شما می‌خواید.

yalda.night
شنبه 03 تیر 1391, 17:04 عصر
يعني من بدون تعريف كلاس نميتونم متني رو وارد كنم كه فقط با كلمه end خاتمه پيدا كنه؟:افسرده:

مسعود اقدسی فام
شنبه 03 تیر 1391, 23:02 عصر
يعني من بدون تعريف كلاس نميتونم متني رو وارد كنم كه فقط با كلمه end خاتمه پيدا كنه؟:افسرده:

یه روش هم اینه که کاراکتر به کاراکتر با getche دریافت کنید و اگه چهار حرف آخر فاصله و end باشه تمومش کنید.

pe32_64
چهارشنبه 14 تیر 1391, 14:18 عصر
یه روش هم اینه که کاراکتر به کاراکتر با getche دریافت کنید و اگه چهار حرف آخر فاصله و end باشه تمومش کنید.


int main(int argc, char* argv[])
{
char input[32+1] = {0};
int bLenOk = 0,bTextOk = 0,bSuccess = 0;

do
{
fgets(input,sizeof input,stdin);
bLenOk = strlen(input) == 4;
bTextOk = !strncmp(input,"end",3);
bSuccess = bLenOk&bTextOk;
}while(!bSuccess);
return 0;
}