Anticom >> آموزشهای حیرت انگیز!!

..:: The Best Way to Learn ::..

Anticom >> آموزشهای حیرت انگیز!!

..:: The Best Way to Learn ::..

آموزش ++C - قسمت چهارم


ثابت ها در
++C  Constants in !!

" ثابت ها، نمادهایی با مقادیر ارزشی ثابت هستند! "

این جمله خیلی سنگینه!، و شاید یه نفر که واسه اولین بار می خواد با ثابت ها آشنا بشه، نامفهوم باشه!

اگه نفهمیدید، مهم نیست، تا آخر مطلبو که بخونید متوجه مفهومش میشین!!

 

ثابت های عددی:

خود اعداد ریاضی، ثابت به شمار میروند. چون مقدار ارزشی یک عدد مثل 32 همیشه ثابته.

ثابت های عددی از نوع اعداد صحیح:

1776

707

273-

در محاسبات فقط از مبنای 10 استفاده نمیشه، مبناهایی مثل 8 و 16 خیلی پرکاربرد هستند. شیوه نوشتن ثابت ها در مبنای 8 و 16 رو می بینیم:

75        // Decimal  مبنای 10

0113    // Octal  مبنای 8

0x4b    // Hexadecimal   مبنای 16

صفر ابتدای عدد در ریاضیات بی ارزشه، ولی در کدنویسی C++ مشخص کننده ی اینه که عدد در مبنای 8 بیان شده!

و عدد در مبنای 16 هم با پیشوند 0x نوشته میشه.

ثابت های عددی مثل متغییرها، نوع داده ای دارند (integer, long, float, …)

اعدادی را که به صورت ساده، مثل 72 می نویسیم، در حالت پیش فرض int در نظر گرفته میشن.

با این حال می تونیم در هنگام نوشتن عدد، نوع داده ای اون رو مشخص کنیم:

75                 // int

75u               // unsigned int

75l                // long int

75ul              // unsigned long

نکته) پسوندهای تعیین کننده ی نوع داده ای رو می تونیم به هر دو شکل الفبایی بزرگ و کوچک بنویسیم، هیچ فرقی نداره!

 

ثابت های اعشاری:

به اعداد زیر و معادل آنها توجه کنید:

3.14159         // 3.14159

6.02e23         // 6.02 * 10^23

1.6e-19            // 1.6 * 10^-19

3.0          // 3.0

این چهار نمونه اعداد اعشاری هستند که در C++ شناخته میشن.

اولی عدد PI (همون عدد پی)، دومی عدد آووگادرو، سومی بار الکتریکی الکترون و آخری عد3 با یک ممیز در انتها می باشد.

نوع پیش فرض اعداد اعشاری، double است. ولی اگر بخواهیم عدد را از نوع float یا long double تعریف کنیم، اینجوری می نویسیم:

3.14159L   // long double

6.02e23f   // float

دوباره میگم که پسوندها و میانوندها به کوچکی و بزرگی حروف حساس نیستند.

 

ثابت های کاراکتری و رشته ای:

ثابت های غیر عددی هم وجود دارند، مثل:

'z'

'P'

"Hello World"

"How do you do?"

ثابت های اول، ثابت های کاراکتری هستند که فقط حاوی یک کاراکتر می باشند.

ولی دو ثابت آخر، ثابت های رشته ای هستند که حاوی رشته ای از کاراکترها هستند.

ثابت های کاراکتری را بین single quotes (') و ثابت های رشته ای را بین double quotes (") می نویسیم.

توجه داشته باشید که مثلا G به تنهایی یک شناسه (identifier) است، در حالی که 'G' نمایان گر کارکتر G است.

برای استفاده از بعضی از کارکترهای خاص که نوشتن آنها در سورس کد برنامه مشکل یا غیر ممکن است، نمادهایی قراردادی در نظر گرفته شده است، مثلا اگر بخواهیم پس از چاپ یک سطر، به طر بعدی برویم، باید کاراکتر '\n' را چاپ کنیم.

چندتا از این کاراکترها رو اینجا می بینید:

\n       new line

\r       carriage return

\v       vertical tab

\b       back space

\a       alert (beep)

\'       single quote (')

\"      double quote (")

\?     Question mark (?)

\\      back slash (\)

اینا رو ترجمه نکردم چون انگلیسیش قابل درک تره!

 

ثابت های منطقی:

دو مقدار تعریف شده برای ثابت های منطقی وجود داره: true و false

 

روش تعریف ثابت ها در C++ :

در کد نویسی، بهتره بعضی از مقادیر ثابتی رو که از ابتدا تا انتهای برنامه تغییر نمی کنند، نام گذاری کنیم و از نام (شناسه) اونها در کد نوشتن استفاده کنیم، مثل عدد پی (PI) ، این کار فواید خیلی زیادی داره که کم کم به اونها هم میرسیم!

برای تعریف کردن ثابت ها در C++ دو روش وجود داره:

روش اول: Defined Constants

مثلا:

#define   PI   3.14159

#define   NEWLINE   '\n'

که این تعریف باید بالای تابع main نوشته شود.

1-     // defined constants

2-     #include <iostream>

3-     using namespace std;

4-     #define   PI   3.14159

5-     #define   NEWLINE   '\n'

6-     int main ()

7-     {

8-         double   r = 5.0;           // radius

9-         double   circle;

10-       circle = 2 * PI * r ;

11-       cout << circle;

12-       cout << NEWLINE;

13-       return 0;

14-   }

 

خروجی: 31.4159

با این کار کامپایلر قبل از کامپایل کد، به جای شناسه های ثابت ها، مقدار آنها رو قرار میده!

 

روش دوم:  Declared Constants

این روش، شیوه ی بهتر و قابل درک تری برای تعریف ثابت هاست. بهتون توصیه می کنم فقط از این روش استفاده کنید.

این مثال رو ببینید:

Const      double    PI = 3.14159 ;

یعنی: ثابتی از نوع double ، به نام PI ، مقداری برابر 3.14159  دارد.

صورت های کلی تعریف ثوابت:

#define    [identifier]    [value]

Const      [type]      [identifier] = [value] ;

توجه) نمی تونیم مقدار ثابت ها رو در طول اجرای برنامه تغییر بدبم!

 

نظرات 4 + ارسال نظر
Sababoy یکشنبه 4 بهمن‌ماه سال 1388 ساعت 10:15 http://sababoy.blogfa.com

سلام. با برگی دیگر از یادداشتهای سال 83 به روزم.
چشمان خسته از آرامش کودکان بهشتی در جستجوی سعادت اند. و من چه سعادتمندم از داشتن چشمانت.

The eyes tired of calmness of heaven kids search for happiness. And so happy I am for having your eyes.

Sababoy یکشنبه 23 اسفند‌ماه سال 1388 ساعت 21:19 http://sababoy.blogfa.com

سلام. سال نو را پیشاپیش به شما و خانواده محترمتان تبریک عرض می کنم.
با برگی دیگر از یادداشتهای سال 83 به روزم:

تو از سکوت مهتاب شعری شده ای برای من

You’ve become a poem from moonlight’s silence for me

Sababoy جمعه 17 اردیبهشت‌ماه سال 1389 ساعت 07:32 http://sababoy.blogfa.com

سلام. با برگی دیگر از یادداشتهای سال 83 به روزم:

سبزِ سبز در سبزه زار با هم بودن.
Much greens in plain of being together.

ایرانی نیک شنبه 12 تیر‌ماه سال 1389 ساعت 10:26 http://iraninic.com

سلام،

مهلت تمدید ثبت این دامنه در تاریخ 1389/05/02 تمام خواهد شد و این دامنه غیرفعال خواهد شد، ولی به‌مدت 10 روز پس از تاریخ فوق برای صاحب‌امتیاز دامنه، به‌منظور تمدید ثبت، باقی خواهد ماند.
هزینه ثبت مجدد سالیانه این دامین 10 هزارتومان می باشد که می توانید از طریق وب سایت اصلی شرکت نسبت به ثبت یا حذف دامین خود اقدام کنید .


با تشکر
ایرانی نیک
05117267217

برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد