<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>سی شارپ، #C | حمیدرضا بابازاده</title>
	<atom:link href="https://hamidrezababazadeh.ir/tag/%D8%B3%DB%8C-%D8%B4%D8%A7%D8%B1%D9%BE%D8%8C-c/feed/" rel="self" type="application/rss+xml" />
	<link>https://hamidrezababazadeh.ir</link>
	<description>مشاور و مدرس دوره‌های SQL Server, SSIS, SSAS, Power BI</description>
	<lastBuildDate>Sat, 27 Apr 2019 17:47:16 +0000</lastBuildDate>
	<language>fa-IR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.5.5</generator>

<image>
	<url>https://hamidrezababazadeh.ir/wp-content/uploads/cropped-photo477114607265229875-e1477042263519-32x32.jpg</url>
	<title>سی شارپ، #C | حمیدرضا بابازاده</title>
	<link>https://hamidrezababazadeh.ir</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>درس پنجم &#8211; متغیرهای ＃C</title>
		<link>https://hamidrezababazadeh.ir/%d8%af%d8%b1%d8%b3-%d9%be%d9%86%d8%ac%d9%85-%d9%85%d8%aa%d8%ba%db%8c%d8%b1%d9%87%d8%a7%db%8c-%ef%bc%83c/</link>
					<comments>https://hamidrezababazadeh.ir/%d8%af%d8%b1%d8%b3-%d9%be%d9%86%d8%ac%d9%85-%d9%85%d8%aa%d8%ba%db%8c%d8%b1%d9%87%d8%a7%db%8c-%ef%bc%83c/#respond</comments>
		
		<dc:creator><![CDATA[حمیدرضا بابازاده]]></dc:creator>
		<pubDate>Sat, 27 Apr 2019 08:46:03 +0000</pubDate>
				<category><![CDATA[آموزش #C]]></category>
		<category><![CDATA[مفاهیم مقدماتی سی شارپ]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[آموزش سی شارپ]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[سی شارپ]]></category>
		<category><![CDATA[سی شارپ #C]]></category>
		<category><![CDATA[سی شارپ، #C]]></category>
		<guid isPermaLink="false">http://hamidrezababazade.com/?p=816</guid>

					<description><![CDATA[<p>یک متغیر فقط یک نام ذخیره‌شده در حافظه است که برنامه‌ی می‌تواند آن‌ها را دست‌کاری کند. هر متغیر در#C یک نوع مشخص دارد که اندازه و طرح‌بندی حافظه متغیر، محدوده مقداری که می‌تواند در آن حافظه ذخیره کند و مجموعه عملیاتی که می‌توان به متغیر اعمال کرد را تعیین می‌کند.</p>
The post <a href="https://hamidrezababazadeh.ir/%d8%af%d8%b1%d8%b3-%d9%be%d9%86%d8%ac%d9%85-%d9%85%d8%aa%d8%ba%db%8c%d8%b1%d9%87%d8%a7%db%8c-%ef%bc%83c/">درس پنجم – متغیرهای ＃C</a> first appeared on <a href="https://hamidrezababazadeh.ir">حمیدرضا بابازاده</a>.]]></description>
										<content:encoded><![CDATA[<p>یک متغیر نام بخشی از حافظه است که برنامه‌ی می‌تواند اطلاعات آن‌ را دست‌کاری کند. هر متغیر در#C یک نوع مشخص دارد که اندازه و طرح‌بندی حافظه متغیر، محدوده مقداری که می‌تواند در آن حافظه ذخیره کند و مجموعه عملیاتی که می‌توان به متغیر اعمال کرد را تعیین می‌کند.</p>



<p>نوع مقداری پایه ارائه ‌شده در #C می‌تواند به شکل زیر طبقه‌ بندی شوند.</p>



<figure class="wp-block-image"><img fetchpriority="high" decoding="async" width="623" height="231" src="http://hamidrezababazade.com/wp-content/uploads/image-22.png" alt="" class="wp-image-817" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-22.png 623w, https://hamidrezababazadeh.ir/wp-content/uploads/image-22-300x111.png 300w" sizes="(max-width: 623px) 100vw, 623px" /></figure>



<p>＃C همچنین اجازه تعریف متغیرهای نوع مقداری دیگر مانند enum و متغیرهای نوع ارجاعی مانند class را می دهد که در فصل های بعدی توضیح خواهیم داد.</p>



<h3 class="wp-block-heading"><strong>تعریف متغیر</strong></h3>



<p>قاعده  تعریف متغیر در #C به شرح زیر است:</p>



<figure class="wp-block-image"><img decoding="async" width="623" height="27" src="http://hamidrezababazade.com/wp-content/uploads/image-23.png" alt="" class="wp-image-818" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-23.png 623w, https://hamidrezababazadeh.ir/wp-content/uploads/image-23-300x13.png 300w" sizes="(max-width: 623px) 100vw, 623px" /></figure>



<p>در اینجا، (data_type) باید یک نوع داده معتبر در #C مثل char, int, float, double و یا هر دیتا تایپ تعیین شده توسط کاربر باشد و (variable_list) می تواند از یک یا چند نام شناسه جدا شده توسط کاما (,) تشکیل شود.</p>



<p>چند تعریف متغیر معتبر در اینجا نشان داده شده است.</p>



<figure class="wp-block-image"><img decoding="async" width="623" height="67" src="http://hamidrezababazade.com/wp-content/uploads/image-24.png" alt="" class="wp-image-819" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-24.png 623w, https://hamidrezababazadeh.ir/wp-content/uploads/image-24-300x32.png 300w" sizes="(max-width: 623px) 100vw, 623px" /></figure>



<p>شما می توانید مقداردهی متغیر را در زمان تعریف به این شکل انجام دهید:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="624" height="26" src="http://hamidrezababazade.com/wp-content/uploads/image-25.png" alt="" class="wp-image-820" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-25.png 624w, https://hamidrezababazadeh.ir/wp-content/uploads/image-25-300x13.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<h3 class="wp-block-heading"><strong>مقداردهی متغیرها</strong></h3>



<p>مقداردهی (اختصاص دادن مقدار) متغیرها با یک علامت مساوی و بعد از آن یک عبارت ثابت انجام می شود.</p>



<p>شکل عمومی مقداردهی به شرح زیر است:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="623" height="26" src="http://hamidrezababazade.com/wp-content/uploads/image-26.png" alt="" class="wp-image-821" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-26.png 623w, https://hamidrezababazadeh.ir/wp-content/uploads/image-26-300x13.png 300w" sizes="(max-width: 623px) 100vw, 623px" /></figure>



<p>متغیرها می توانند در زمان تعریف خود، مقداردهی شوند. مقدار دهنده شامل یک علامت مساوی و پس از آن عبارت ثابت هستند؛ مانند عکس زیر:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="624" height="26" src="http://hamidrezababazade.com/wp-content/uploads/image-27.png" alt="" class="wp-image-822" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-27.png 624w, https://hamidrezababazadeh.ir/wp-content/uploads/image-27-300x13.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p>در زیر چند نمونه آمده است:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="624" height="67" src="http://hamidrezababazade.com/wp-content/uploads/image-28.png" alt="" class="wp-image-823" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-28.png 624w, https://hamidrezababazadeh.ir/wp-content/uploads/image-28-300x32.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p>این یک روش برنامه‌ نویسی خوب برای مقداردهی مناسب متغیرها می باشد، در غیر این صورت بعضی مواقع برنامه ممکن است نتیجه غیر منتظره ای را ایجاد کند.</p>



<p>در مثال زیر از انواع مختلف متغیرها استفاده شده است:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="624" height="278" src="http://hamidrezababazade.com/wp-content/uploads/image-29.png" alt="" class="wp-image-824" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-29.png 624w, https://hamidrezababazadeh.ir/wp-content/uploads/image-29-300x134.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p>وقتی کد بالا کامپایل و اجرا می شود، نتیجه زیر را به دست می آورد.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="623" height="27" src="http://hamidrezababazade.com/wp-content/uploads/image-30.png" alt="" class="wp-image-825" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-30.png 623w, https://hamidrezababazadeh.ir/wp-content/uploads/image-30-300x13.png 300w" sizes="(max-width: 623px) 100vw, 623px" /></figure>



<h3 class="wp-block-heading"><strong>پذیرش مقدار از کاربر</strong><strong></strong></h3>



<p>کلاس Console در فضای نام System، برای پذیرش ورودی از کاربر و ذخیره آن در متغیر، تابع   () Console.ReadLine را ارائه می دهد.</p>



<p>برای مثال:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="624" height="40" src="http://hamidrezababazade.com/wp-content/uploads/image-31.png" alt="" class="wp-image-826" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-31.png 624w, https://hamidrezababazadeh.ir/wp-content/uploads/image-31-300x19.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p>تابع () Convert.ToInt32، اطلاعات وارد شده توسط کاربر را به دیتا تایپ int تبدیل می کند، زیرا  () Console.ReadLine اطلاعات را با فرمت رشته ای قبول می کند.</p>



<h3 class="wp-block-heading"><strong>عبارات Lvalue و Rvalue در #C</strong></h3>



<p>دو نوع عبارت در #C وجود دارد:</p>



<ul><li>Lvalue: عبارتی که یک Lvalue است می تواند در سمت چپ یا راست یک assignment ظاهر شود.</li><li>Rvalue: عبارتی
که یک Rvalue است می تواند در سمت راست یک assignment ظاهر شود، اما نمی
تواند در سمت چپ آن ظاهر شود.</li></ul>



<p>متغیرها lvalue هستند، از این رو می توانند در سمت چپ یک assignment = ظاهر شوند. لیترال عددی rvalue هستند از این رو نمی توانند در سمت چپ ظاهر شوند. در ادامه یک دستور معتبر در #C آمده است.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="624" height="27" src="http://hamidrezababazade.com/wp-content/uploads/image-32.png" alt="" class="wp-image-827" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-32.png 624w, https://hamidrezababazadeh.ir/wp-content/uploads/image-32-300x13.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p>اما دستور زیر معتبر نیست و خطای compile-time را به همراه دارد.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="623" height="23" src="http://hamidrezababazade.com/wp-content/uploads/image-33.png" alt="" class="wp-image-828" srcset="https://hamidrezababazadeh.ir/wp-content/uploads/image-33.png 623w, https://hamidrezababazadeh.ir/wp-content/uploads/image-33-300x11.png 300w" sizes="(max-width: 623px) 100vw, 623px" /></figure>The post <a href="https://hamidrezababazadeh.ir/%d8%af%d8%b1%d8%b3-%d9%be%d9%86%d8%ac%d9%85-%d9%85%d8%aa%d8%ba%db%8c%d8%b1%d9%87%d8%a7%db%8c-%ef%bc%83c/">درس پنجم – متغیرهای ＃C</a> first appeared on <a href="https://hamidrezababazadeh.ir">حمیدرضا بابازاده</a>.]]></content:encoded>
					
					<wfw:commentRss>https://hamidrezababazadeh.ir/%d8%af%d8%b1%d8%b3-%d9%be%d9%86%d8%ac%d9%85-%d9%85%d8%aa%d8%ba%db%8c%d8%b1%d9%87%d8%a7%db%8c-%ef%bc%83c/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
