PDA

View Full Version : مبتدی: مشکل با استفاده از رشته ها



Arcsinos
چهارشنبه 28 اردیبهشت 1390, 20:15 عصر
سلام

من وقتی توی ++visual c میخوام از رشته ها استفاده کنم برنامه ازم ایراد میگیره مثلا s1 رو از نوع string میسازم و بعد میخوام cin>>s1 کنم . تو قسمت برنامه ازم من ایراد میگیره . یعنی string رو به عنوان یه "نوع" میشناسه ولی وقتی میام بخونمش ایراد میگیره . اگه میشه لطف کنید یا بگید چطوری میتونم این مشکل رو رفع کنم یا اینکه یه IDE استاندارد معرفی کنید که به جای Visual از اون استفاده کنم . توربو هم مشکل داره باهاش .

ممنون

amin1softco
چهارشنبه 28 اردیبهشت 1390, 21:01 عصر
شاید مشکلت این باشه:متفکر:

#include <string>
using namespace std;

بعد کدت رو بنویسی یا

std::cin>>str;

Arcsinos
چهارشنبه 28 اردیبهشت 1390, 21:16 عصر
باتشکر فراوان

ولی من تمام این کارها رو کردم . اصلا اگه هدر رو اضافه نکنیم که رشته رو به عنوان یه نوع جدا نمیشناسه . ولی مشکل اینجاست که رشته رو میشناسه توی ورودیش میمونه . حتی از string str="salam هم ایراد نمیگره ولی وقتی میخوام بنویسم cout<<str میگه که عملگر >> برای رشته ها تعریف نشده و ازین حرفا .

amin1softco
چهارشنبه 28 اردیبهشت 1390, 21:38 عصر
#include <iostream>
using namespace std;

int main ()
{
cout << "Hello World!";
return 0;
}

ببین این برنامه بالایی باید درست اجرا بشه اگه نمی شه مشکل از ویژواله
و IDE های زیادی وجود داره که به نظرم
DEV-CPP
مناسب ترینشونه

Arcsinos
چهارشنبه 28 اردیبهشت 1390, 22:25 عصر
ببین این برنامه بالایی باید درست اجرا بشه اگه نمی شه مشکل از ویژواله


دست شما درد نکنه . یعنی من تا الان هیچ برنامه ای تو ویژوال ننوشتم دیگه ؟ . من الان سه ساله که با ویژوال برنامه مینویسم و همیشه هم با این موضو مشکل داشتم . اگه میشه شما خودتون یه برنامه تو ویژوال بنویسید و از رشته ها استفاده کنید ببینید که واسه شما درست کار میکنه یا نه . البته الان char *str یا مثلا char str[20 کارمو را میندازه ولی اگه string باشه بهتره .

amin1softco
پنج شنبه 29 اردیبهشت 1390, 00:20 صبح
والا من تست گرفتم کار داد ..................!
تنظیمات کامپایلرو دست نزدی!؟

amir.bakhtiari
پنج شنبه 29 اردیبهشت 1390, 01:16 صبح
من وقتی توی ++visual c میخوام از رشته ها استفاده کنم برنامه ازم ایراد میگیره مثلا s1 رو از نوع string میسازم و بعد میخوام cin>>s1 کنم . تو قسمت برنامه ازم من ایراد میگیره . یعنی string رو به عنوان یه "نوع" میشناسه ولی وقتی میام بخونمش ایراد میگیره . اگه میشه لطف کنید یا بگید چطوری میتونم این مشکل رو رفع کنم یا اینکه یه IDE استاندارد معرفی کنید که به جای Visual از اون استفاده کنم . توربو هم مشکل داره باهاش .


برای اینکه شما بتوانید از کاربر رشته دریافت کنید باید:
#include <iostream.h>
using std::cout;
using std::cin;
using std::endl;
#include <string.h>
using std::string;
using std::getline;
#include<conio.h>

int main ()
{
string name;
getline(cin,name);
cout << name<<endl;
getch();
return 0;
}

amin1softco
پنج شنبه 29 اردیبهشت 1390, 06:22 صبح
بله به نکته حکیمانه ایی اشاره کردند فقط فرقش با کد قبلی اینه که این کد اسپیس ها رو هم در نظر میگیره و لی cin تا اولین جدا کننده ورودی رو در رشته قرار می ده.

Arcsinos
پنج شنبه 29 اردیبهشت 1390, 07:26 صبح
با تشکر

تستهایی که شما گرفتید هر دو توی DEV CPP هست که من هم با اون مشکلی ندارم . هر دو برنامه ای که شما دوستان دادید توی DEV CPP به درستی کار میکنه ولی باز هم من با visual مشکل دارم .

amir.bakhtiari
پنج شنبه 29 اردیبهشت 1390, 11:24 صبح
تستهایی که شما گرفتید هر دو توی DEV CPP هست که من هم با اون مشکلی ندارم . هر دو برنامه ای که شما دوستان دادید توی DEV CPP به درستی کار میکنه ولی باز هم من با visual مشکل دارم .
این برنامه ای که من دادم تو VC++ هیچ مشکلی نداره من این برنامه رو تو Visual هم تست کردم هیچ مشکلی نداشت.

بله به نکته حکیمانه ایی اشاره کردند فقط فرقش با کد قبلی اینه که این کد اسپیس ها رو هم در نظر میگیره و لی cin تا اولین جدا کننده ورودی رو در رشته قرار می ده.
دوست عزیز برنامه من کل متنو تا زدن Enter دریافت میکنه.