سوال در مورد bool و int در سی شارپ
#1
Note 
سلام
میخواستم بدونم کار bool چیه و اصلا به چه دردی میخوره ؟ چرا فقط true و false میشه ؟ چه فرقی بین کدهاش هست ؟

این کد یعنی چی ؟ دقیقا چیکار میکنه ؟ =>

[CSHARP]
bool bool1;
int int1;


if (bool1)
{
int1 += ((System.Windows.Forms.Timer)(sender)).Interval / 1000;
if (int1 > 900)
bool1 = !bool1;
else
return;
}
[/CSHARP]

مخصوصا این کد به چه معناییه ؟ چرا این شکلیه ؟
[CSHARP]
int1 += ((System.Windows.Forms.Timer)(sender)).Interval / 1000;
[/CSHARP]

ممنون

پاسخ
#2
Note 
وجود bool خیلی مهمه معمولا برای کنترل کردن بکار میره مثل همین کدی که گذاشتی البته کدش یه مشکل کوچیک داره اونم اینه که به bool1 و int1 مقدار اولیه داده نشده.
مقدار اولیه bool1 باید true باشه تا کد کار کنه
این کد چک میکنه اگر تعداد کدهای داخل تایمر (چون خودش هم باید تو تایمر باشه) 901 بار اجرا شد دیگه اجرا نشه!

اپراتور =+ مقدار جدید رو به مقدار قبلی که در متغیر int1 وجود داره اضافه میکنه

if (bool1)

اگر متغیر bool1 مقدارش true هست...

((System.Windows.Forms.Timer)(sender)).Interval / 1000
این کد هم میاد میلی ثانیه رو به ثانیه تبدیل میکنه => 1000 میلی ثانیه = 1 ثانیه
که interval تایمر باید بر حسب میلی ثانیه وارد بشه.

if (int1 > 900)
bool1 = !bool1;

اینجام میگه اگر 901 ثانیه(901 بار) اجرا شد مقدار رو مخالف خودش قرار بده (مخالف true میشه false دیگه)

! بیانگر not یا مخالف هست

بعد هم که bool1مقدارش false شد کد دیگه اجرا نمیشه چون اولش چک میکنه

ساده تر این کد:

[CSHARP]
bool bool1 = true;
int int1 = 0;
private void timer1_Tick(object sender, EventArgs e)
{
Text = bool1.ToString() + int1.ToString();
if (bool1 == true)
{
int1 = int1 + timer1.Interval / 1000;
if (int1 > 5)
bool1 = false;
else
return;
}
}


private void Form1_Load(object sender, EventArgs e)
{
timer1.Interval = 1000;
timer1.Enabled = true;
}
[/CSHARP]

این همه سوال کردی توش boolean استفاده شده بود الان میپرسی؟ :73:

پاسخ
ایجاد موضوع جدید   پاسخ به موضوع  

موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
Note کتاب آموزش Parse کردن یک خبر خوان وردپرسی برای ویندوزفون The Arrow 0 979 23-04-2015 ساعت 09:24
آخرین ارسال: The Arrow
Note سوال ساخت تقویم فارسی در ویندوز 8.1 The Arrow 2 993 16-01-2015 ساعت 00:32
آخرین ارسال: The Arrow
Note دیتابیس SQLite در سی شارپ The Arrow 3 2,433 07-11-2014 ساعت 22:40
آخرین ارسال: VBProgrammer
Note FileAssociation در سی شارپ The Arrow 1 567 05-11-2014 ساعت 12:32
آخرین ارسال: SOFTAFZAR
Note آموزش کامل سی شارپ (ویدئو) xMAN 2 682 02-10-2014 ساعت 12:50
آخرین ارسال: xMAN
Note explorer سی شارپ cMan 1 485 30-08-2014 ساعت 12:07
آخرین ارسال: SOFTAFZAR
Note پیدا کردن متن در سی شارپ arfanz 7 879 27-08-2014 ساعت 01:10
آخرین ارسال: The Arrow
Note برنامه نویسی موازی با سی شارپ xMAN 0 450 05-08-2014 ساعت 12:01
آخرین ارسال: xMAN
Note جستجو در یک متن در سی شارپ arfanz 12 2,242 16-07-2014 ساعت 09:32
آخرین ارسال: Stack OverFlow
Note مخفف کنترلهای سی شارپ mshayan 2 849 15-07-2014 ساعت 13:32
آخرین ارسال: mshayan

کاربرانِ درحال بازدید از این موضوع:   1 مهمان