محبوبترینها
آیا میشود فیستول را عمل نکرد و به خودی خود خوب میشود؟
مزایای آستر مدول الیاف سرامیکی یا زد بلوک
سررسید تبلیغاتی 1404 چگونه میتواند برندینگ کسبوکارتان را تقویت کند؟
چگونه با ثبت آگهی رایگان در سایت های نیازمندیها، کسب و کارتان را به دیگران معرفی کنید؟
بهترین لوله برای لوله کشی آب ساختمان
دانلود آهنگ های برتر ایرانی و خارجی 2024
ماندگاری بیشتر محصولات باغ شما با این روش ساده!
بارشهای سیلآسا در راه است! آیا خانه شما آماده است؟
بارشهای سیلآسا در راه است! آیا خانه شما آماده است؟
قیمت انواع دستگاه تصفیه آب خانگی در ایران
نمایش جنگ دینامیت شو در تهران [از بیوگرافی میلاد صالح پور تا خرید بلیط]
صفحه اول
آرشیو مطالب
ورود/عضویت
هواشناسی
قیمت طلا سکه و ارز
قیمت خودرو
مطالب در سایت شما
تبادل لینک
ارتباط با ما
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
آمار وبسایت
تعداد کل بازدیدها :
1855069824
آموزش ++c. -
واضح آرشیو وب فارسی:سایت ریسک: آموزش ++c. Y.P.Y 01 شهريور 1388, 17:42زبان C(سی) C یک زبان برنامه نویسی () کامپیوتری هست که در سال 1972 توسط Dennis Ritchie () برای سیستم عامل () Unix () نوشته شد. C تکامل یافته زبان برنامه نویسی B ((programming_language)) می باشد و نامگذاری C که بعد از B بوجود آمد همین است. C یک زبان برنامه نویسی سطح میانی و ساخت یافته می باشد. در علوم کامپوتری، سطوح زبانهای برنامه نویسی را به سه دسته اصلی تقسیم می کنند: 1- سطح بالا. 2- سطح میانی(C و ++C). 3- سطح پایین. زبان C جزو دسته دوم می باشد. به این دلیل که قادر است مانند زبان اسمبلی () مستقیماً با حافظه(بیت، بایت، آدرس و...) کار کند و از طرف دیگر نوشتن و خواندنش راحت می باشد(مانند زبان Pascal ((programming_language))). از جمله ویژگی های زبان C می توان به: قابلیت انعطاف، زبان سیستمی، سطح میانی، قابل حمل، کامل و کوچک، سبک، سریع و قدرتمند بودنش اشاره کرد. زبان ++C(سی پلاس پلاس) در سالهای بین 1979 و 1983، زبان C توسط Stroustrup تکامل یافت. توانایی و قدرت این زبان چند برابر شد و زبان C جدید و بعد C کلاسدار و بعد ++C بوجود آمد. که اولین نگارش ++C در سال 1985 روانه بازار شد. زبان ++C یک زبان برنامهنویسی کامپیوتری همه منظوره، شی گرا، سطح بالا و چندرگه، عمومی و با قابلیتهای سطح بالا و سطح پایین میباشد. ساختار این زبان شامل: دستورات پیش پردازنده(Preprocessor)، اعلانات سراسری(توابع، ماکروها، متغیر ها، ثوابت و...)(Global declaration)، تابع main و توابع تعریفی کاربر(user-defined function) می باشد. منبع: Y.P.Y 01 شهريور 1388, 17:44ساختار و معماری اولین باری که به یک برنامه ++C نگاه می کنید، بنظر پیچیده می آید. شکل گرامری زبان ++C مختصر می باشد و همین مختصر بودن دلیل قدرت و انعطاف این زبان می باشد. شکل گرامری مختصر در واقع وقت بیشتری برای طراحی منطق های برنامه به ما می دهد و باعث می شود زمان کمتری برای تایپ دستورات و خواندن آنها صرف کنیم. تمام برنامه های ++C از ساختار کلی/اساسی یکسانی پیروی می کنند. یعنی ساختار یک نرم افزار بزرگ و پیچیده برابر ساختار یک برنامه کوچک و ساده می باشد. که این اصل رو خودتون هم متوجه خواهید شد. یک برنامه C/C++: 1- دستورات پیش پردازنده: شرطها، ضمیمه ها(include)، ماکروها... 2- اعلانات سراسری: متغیر ها، توابع، ثوابت... 3- main() 4- توابع تعریفی کاربر/برنامه نویس برای درک بهتر این مسله به مثال زیر توجه کنید(تمامی دستورات بعداً مفصل شرح داده می شود): // Test comment. Hello. #ifndef _XXXXX_H #define _XXXXX_H #else #define _ZZZZZ_H #endif #if !defined _YYYYY_H #define _YYYYY_H #endif #include <MyLibrary.h> #include <MyClass.h> #define false -1 #define number1 5 #define number2 10 #define MyDefine "test" #define sum number1 + number2 #define MyMacroFunction(xxx) xxx * 22 ////////////////////////////////////////////////// int i= 0, j= 1000; char c; float f= 1; void MyFunction(void); int MyFunction2(int zzzzz); ////////////////////////////////////////////////// main() { //... MyFunction(); #undef MyDefine //... } ////////////////////////////////////////////////// void MyFunction(void) { //... } int MyFunction2(int zzzzz) { //... return(zzzzz); } خط 1 توضیحات/نظرات می باشد. که در مورد برنامه/خط بعدی مطالبی رو مطرح می کند. توضیحات اجباری نمی باشد و هیچگونه کار و عملیات برنامه نویسی انجام نمی دهد. فقط برای فهم و یادآوری استفاده می شود. در هر برنامه C/C++ اولین قسمتی که کار/عملیات انجام می دهد، دستورات پیش پردازنده می باشد. که با علامت # شروع می شوند. 1- دستورات پیش پردازنده از خط 2 تا 10 دستورات ضمیمه شرطی(منطقی)(Conditional inclusion directive) قرار دارند(پیش پردازنده هستند). عبارت ndef و عبارت !defined هر دو یکی هستند. این دستورات قبل از انجام کامپایل، بررسی و اعمال می شوند. وظیفشون این هست که موضوعاتی رو چندین بار اعلام می کنند و یا از اعلام مجدد موضوعات جلوگیری می کنند. علامت ! به معنای Not منطقی می باشد و می تواند بطور دلخواه در عبارات استفاده شود. خط 12 و 13 شامل فایل های Header(منبع) ضمیمه شده می باشد که به کامپایلر(Compiler) می گوید قبل از شروع کامپایل آنرا در برنامه ضمیمه کن. فایل های Header معمولاً شامل توابع تعریفی کاربر، تعاریف ماکروها و API ها می باشد. هر دستور include باعث یک توقف/Pause برای کامپایلر می شود تا زمانی که محتوای فایل ضمیمه شده بدقت خوانده و پردازش شود. خط 15 تا 18 شامل تعاریف ماکرو های ثابت و خط 19 و 20 شامل تعاریف ماکروهای تابع می باشند. هر کجا که فراخوانی شوند، محتوای ماکرو جایگزین نام ماکرو در محل فراخوانی می شود. 2- اعلانات سراسری خط 22 تا 27 شامل اعلانات سراسری می باشد. خط 22 تا 24 اعلانات متغیر های سراسری(Global) می باشد که در سرتاسر برنامه قابل دسترسی هستند(استفاده از متغیر های سراسری پیشنهاد نمی شود). خط 26 و 27 هم شامل اعلانات توابع سراسری می باشد که در سرتاسر برنامه قابل دسترسی هستند. تابع اولی هیچ(void) مقداری را نمی گرداند و هیچ آرماگونی را هم نمی گیرد. ولی تابع دومی(MyFunction2) مقدار عددی صحیح برمیگرداند و آرماگون عددی بلند هم می گیرد. کامپایلر ار اطلاعاتی در اعلان تابع استفاده می کند تا درستی فراخوانی(اعلان)های تابع را کنترل نماید. بعد از اینکه آنها را Pass کرد، آنهارا فراخوانی می کند تا صحت نوع داده ها را مشخص کند. در ضمن آرماگونها و مقدار اولیه و خروجی رو هم بررسی می کند. 3- main() سومین قسمت اصلی هر برنامه، تابع main() است(همه برنامه ها این تابع رو دارن). اجرای برنامه از این تابع شروع می شود و معمولاً در همین تابع هم پایان می یابد(خط 29). برخی برنامه ها ممکن است فقط یک تابع main() داشته باشند و این چیز طبیعیست. این تابع می تواند شامل فراخوانی ها، دستورات، شرط ها، حلقه ها، API ها و هر چیز ممکن در ++C باشد. در خط 33 همین تابع، یک دستور #undef قرار دارد. این دستور می تواند ماکروی تعریف شده را خنثی/نابود سازد. 4- توابع تعریفی کاربر چهارمین قسمت اصلی هر برنامه، توابع تعریفی کاربر(user-defined function) می باشد. این توابع می توانند شامل هر دستوری باشد(مانند تابع main) و هر کاری انجام دهد. در این مثال از خط 36 به بعد شامل این توابع می باشد. ابتدا نوع برگشتی(Return) تابع مشخص می شود. بعد نام تابع مشخص می شود. و بدنبالش آرماگون ها و آخر بدنه تابع مشخص می شود(میان دو آکولاد {}). منبع: Y.P.Y 02 شهريور 1388, 15:07روند تولید(کامپایل) برنامه وقتی برنامه ای را تایپ می کنید، یک فایل منبع(Source) ایجاد می کنید. یعنی صفحه ای با متونی شبیه به زبان لاتین که فقط برنامه نویس متوجه آن خواهد شد. این صفحه کاری نمی کند و کامپیوتر هم متوجه آن زبان نمی شود. باید پردازش و عملیاتی(ترجمه) انجام گیرد تا این صفحه تبدیل به زبانی شود که کامپیوتر بتواند آنرا درک کند و برنامه قابل اجرایی را تولید کند(مانند فایلهای سیستم تون). اولین مرحله در پردازش(ایجاد برنامه)، استفاده از ویرایشگر متنی برای نوشتن کدهای ++C می باشد. شما فایل منبع(Source) را به زبان ++C که شبیه به معماری کامپیوتر هست را می نویسید(به لاتین). بعد باید آنرا به زبان و دستورالعمل های ماشینی(Machine language) تبدیل کنید. این کار بعهده کامپایلر می باشد. کامپایلر برای اینکار عملیات زیر را انجام می دهد: (برای درک بهتر این موضوع، بر روی یک کامپایلر Open source(منبع باز/متن باز) کار کنید) ابتدا فایل منبع(Source) خوانده می شود و به تعدادی علایم پیش پرازش(Preprocessor token)(عناصری که کامپایر می تواند با آنها کار کند. مثل عمگر ها، ثابتها، کلمات کلیدی و...) و کاراکتر های سفید(Blank)(شامل فضاهای خالی، Tab ها و Comment ها) تبدیل می شود. در این مرحله کاراکتر های ویژه(Special) تبدیل می شوند و دستورات جدا که دو یا چند خط اشغال نمودند به یکدیگر پیوند می خورند. سپس دستورات پیش پردازنده(# دار ها) اجرا می گردند. این دستورات شامل include, define if و... می باشند. در این مرحله تمامی دستوات و ماکروها Expand می شوند و عملیات و ضمیمه های لازم انجام می گیرد. بعد پردازش کاراکترها و رشته ها انجام می گیرد. در این مرحله برنامه برای صحت شکل گرامری(Syntax) و لغات، تجریه و تحلیل می شود(خطاها و هشدارهای Syntax در این مرحله نمایان می شود). اگر اشتباهات جدی(Fatal) پیدا نشود، یک فایل تجزیه/تحلیل شده(معمولاً با پسوند obj) تولید می گردد(تا با بقیه فایل ها ترکیب شود). دستور پیش پردازنده include# در هر لحظه می تواند چندین فایل را داخل برنامه ادغام(Merge) کند. و هر بار که کامپایلر به این دستور برخورد می کند، به اندازه محتوایش موقتاً پردازش را متوقف(Halt) می کند(همینکار رو زبان های دیگه مثل PHP, ASP Net , Python, PERL و... انجام می دهند!). در آخرین مرحله(ایجاد برنامه فابل اجرا)، پردازش فایل تولید شده(obj) توسط یک پیوند دهنده(Linker یا Link) انجام می شود. اکثر برنامه ها دارای رجوعاتی به روال(Routine) می باشند که در خارج از برنامه جاری وجود دارند. این روال ها باید آدرس یابی و به برنامه شما اتصال داده شوند تا بتوان با آنها کار کرد. پیوند دهنده(Linker) تمامی فایلها را با هم ترکیب می کند و در نتیجه یک برنامه قابل اجرا تولید می شود. تمامی این مراحل توسط کامپایلر انجام می شود. و شما فقط کد می نویسید و بعد با یک کلیک بر روی Build/Make برنامه تان را تولید می کنید(در کامپایلرهای GUI). منبع: Y.P.Y 03 شهريور 1388, 18:23انواع داده ها/Data types داده هایی(اطلاعاتی) که توسط یک برنامه استفاده می شود، توسط نوع آنها طبقه بندی می شوند. نوع یک داده بیانگر مقادیر و دامنه آن داده می باشد. داده ها اندازه و انواع مختلفی دارند و هر نوع داده برای ذخیره شدن نیاز به مقدار حافظه متفاوتی دارد. کلیه برنامه هایی که نوشته می شوند بر روی برخی از انواع داده ها عملیاتی انجام می دهند. پس برنامه برای پردازش داده باید نوع آنها را شناسایی کند. در زبان C سه نوع داده اصلی(اساسی) وجود دارد: Integer, Float, Character(معادل فارسی: عدد صحیح، شناور/ممیزی/اعشاری، کاراکتری). هز کدام از این نوعها شامل گونه های زیادی(ریز تری) هستند که دامنه وسعی از مقادیر را در بر می گیرند. داده اعداد صحیح/Integer: بیشترین نوع داده ها، عدد صحیح یا Integer می باشند. این نوع شامل داده های 9, 8, 7 ,6 ,5 ,4 ,3 ,2 ,1 ,0 , -1, -2 ,-3 ,-4 ,-5 ,-6 ,-7 ,-8 ,-9 می باشد و با کلمات کلیدی(رزرو شده) int, unsigned int, short int, long, unsigned long مشخص می شوند. تفاوت اینها در دامنه مقداری و حافظه اِشغالی می باشند: int دامنه مقدارش از -32768 تا 32767 بوده و به 2 بایت حافظه نیاز دارد. صحیح. unsigned int دامنه مقدارش از 0 تا 65535 بوده و به 2 بایت حافظه نیاز دارد. صحیح بدون علامت. short int دامنه مقدارش از -32768 تا 32767 بوده و به 2 بایت حافظه نیاز دارد. صحیح کوتاه. long دامنه مقدارش از -2147483648 تا 2144483647 بوده و به 4 بایت حافظه نیاز دارد. بلند. unsigned long دامنه مقدارش از 0 تا 4294967295 بوده و به 4 بایت حافظه نیاز دارد. بلند بدون علامت. توجه داشته باشید که اعداد صحیح، قسمت شناور/ممیزی/اعشاری ندارند. داده اعداد شناور/ممیزی/اعشاری/Float: دومین نوع داده ها، شناور/ممیزی/اعشاری یا Float می باشند. این نوع شامل داده های 9, 8, 7 ,6 ,5 ,4 ,3 ,2 ,1 ,0 , -1, -2 ,-3 ,-4 ,-5 ,-6 ,-7 ,-8 ,-9 بهمراه نقطه، ممیز، کسر، توان و... می باشد و با کلمات کلیدی(رزرو شده) float, double, long double مشخص می شوند. تفاوت اینها هم در دامنه مقداری و حافظه اِشغالی می باشند: float دامنه مقدارش از 3.4x10 بتوان -38 تا 3.4x10 بتوان 38 بوده و به 4 بایت حافظه نیاز دارد. شناور/ممیزی/اعشاری. تا 7 رقم دقت. double دامنه مقدارش از 1.7x10 بتوان -308 تا 1.7x10 بتوان 308 بوده و به 8 بایت حافظه نیاز دارد. مضاعف. تا 15 رقم دقت. long double دامنه مقدارش از 3.4x10 بتوان -4932 تا 3.4x10 بتوان 4932 بوده و به 10 بایت حافظه نیاز دارد. مضاعف بلند. تا 19 رقم دقت. قسمت شناور/ممیزی/اعشاری و قدرمطلق دارند و به اعداد حقیقی معروفند(Real numbers). داده کاراکتری/Char: سومین نوع داده ها، کاراکتری یا Char می باشد. این نوع داده بیشتر از یک کاراکتر نمی تواند درخود نگه دارد(در حالت عادی). این نوع می تواند شامل همه داده ها(اعداد، حروف، علائم، Symbols و..) باشد و با کلمه کلیدی(رزرو شده) char مشخص می شود. و 1 بایت حافظه اشغال می کند. کامپیوتر(PC) داده ها و اطلاعات رو بصورت باینری(0 و 1) در خودش ذخیره می کند. پس ذخیره سازی مستقیم یک حروف، کلمه یا علامت غیر ممکن می باشد. برای حل این مسله از یک مقدار عددی برای ذخیره داده ها استفاده می کند. یعنی نوع داده کاراکتری، باطناً یک مقدار عددی برابر با همان کاراکتر می باشد(مثل دکمه های صفحه کلید که هر کدام برای کامپیوتر یک عدد هستند). کامپیوتر(PC) ها از کد ASCII برای نمایش داده های کاراکتری استفاده می کنند. ASCII یک کد استاندارد جهانی شناخته شده است که 128 مقدار متفاوت را در بر دارد(و نمایش می دهد). در نوع داده کاراکتری از همین ASCII ها برای تبادل اطلاعات استفاده می شود. وقتی داده ای رو در نوع کاراکتری ذخیره می کنید همیشه 1 بیت(با بایت اشتباه نگیرید) بصورت خودکار و مخفی خالی می ماند. و این 1 بیت خالی، + یا - بودن عدد(که برابر با همان کاراکتر هست) را نشان می دهد. منبع: Y.P.Y 06 شهريور 1388, 11:27متغیر ها و ثوابت(کار با داده ها) متغیر ها: در زبان های برنامه نویسی، برای استفاده از داده ها باید اسمی برای داده مشخص کرد. این اسم کلمه ای برای حافظه است. اسم می تواند ترکیبی از حروف(کوچک و بزرگ)، اعداد و _(یا همون خط ربط)، بطول 255 کاراکتر(در حالت معمول) باشد(اولین کاراکتر اسم نباید عدد باشد). داده می تواند حاوی عدد، حروف، علامت، رشته، فایل و هر چیز دیگری باشد. متغیر ها محلی برای ذخیره داده ها هستند و چون داده ها دارای نوع می باشند، متغیر ها هم باید دارای نوع باشند. و ممکن است نوع و محتوای متغیر ها در طول اجرا(یا نوشتن) برنامه توسط کاربر(یا برنامه نویس) تغییر کنند. قبل از استفاده از متغیر ها، ابتدا باید نوع و بدنبالش اسم آنها را تعریف کرد. نوع متغیر ها مقادیری که می تواند بپذیرد و اعمالی که می تواند انجام دهد را مشخص می کند. به اصطلاح، تعیین نوع متغیر را تعریف(اعلان) متغیر می گویند. متغیر را به دو روش تعریف می کنند: Type Name; یا Type Name= Value; Type نوع داده/متغیر می باشد. که با حروف کوچک نوشته می شود. و به برنامه می گوید n مقدار حافظه را برای نوع فلان مشخص کن. این نوع می تواند کلمه کلیدی(رزرو شده) int, long, float, double, unsigned int, short int, unsigned long, long double, char و... باشد. Name اسم متغیر می باشد. این اسم میتواند ترکیبی از حروف(بزرگ و کوچک)، اعداد و _(یا همون خط ربط)، بطول 255 کاراکتر(در حالت معمول) باشد(اولین کاراکتر اسم نباید عدد باشد). مثل: test22, abc_22, a_Z, X_X_23434_XX, fff555_oiuuy و... Value مقدار اولیه متغیر می باشد. این گزینه اختیاری می باشد. یعنی می توان مقدار اولیه ای برای متغیر مشخص نکرد. این مقدار می تواند عدد، حروف، علامت، رشته، فایل و هر نوع داده ای باشد. در آخر تعریف متغیر یک علامت ; قرار می گیرد که به کامپایلر(Compiler) می گوید تعریف متغیر به پایان رسیده است. در صورت قرار ندادن این علامت، برنامه کامپایل نمی شود و خطا می دهد. مثال هایی از تعریف(اعلان) متغیر: یک متغیر از نوع عددی صحیح(int): int x; یک متغیر از نوع عددی صحیح(int) با مقدار اولیه: int y= 165; سه متغیر از نوع عددی صحیح(int): int x, YYYYY, z; یک متغیر از نوع کاراکتری(char): char MyCharacter; دو متغیر ار نوع مضاعف(double): double count; double numbers= 99999; و... وقتی برنامه با اسم متغیر برخورد می کند، ابتدا نوعش و سپس مقدارش را بررسی می کند. در آخر مقدار متغیر را جایگزین اسم متغیر می کند(در محل فراخوانی/استفاده شده) . مقدار متغیرها را می توان مقایسه، ترکیب، جمع، تفریق، ضرب، تقسیم، کم و زیاد و... کرد که بعداً مفصل شرح داده خواهد شد. ثابت ها: ثوابت هم خصوصات متغیر ها رو دارند، با این تفاوت که مقادیرشون تغییر نمی کند. یعنی در تمام برنامه یک مقدار را دارند. مزایای ثوابت این است که: می توانند داده های(عدد، حروف، علامت، متن و...) کوتاه یا طولانی را در خود نگه دارند، که این در نوشتن مقادیر تکراری صرفه جویی می کند. مقادیر طولانی یا پیچیده را در سراسر برنامه در دسترس قرار می دهند(یعنی یک اسم بجای چندین مقدار در چندین محل). خطاهای گرامری/Syntax را کاهش می دهد(بدلیل نوشتن/تایپ کمتر). خواندن و درک برنامه را توسط برنامه نویس ساده تر می کند. سرعت پردازش اشکال زدایی(Debugging) را بالا می برند(چون پیش پردازنده مستقیماً مقدارش را جای بررسی مقدارش جایگزین می کند) و... برای تعریف ثابت دو روش وجود دارد: دستور define# و دستور const. دستور define# یک دستور پیش پردازنده و در همه جا قابل تعریف می باشد. بدان معنی که قبل از کامپایل(Compile/تولید) برنامه، خوانده و اعمال می شود. نام دیگر این نوع ثابت ماکرو می باشد. و بشکل زیر تعریف می شود: #define Name Value define# به پیش پردازنده می گوید که تعریف ماکرو آغاز می شود(با حروف کوچک نوشته می شود). Name اسم ماکرو می باشد. این اسم می تواند ترکیبی از حروف(بزرگ و کوچک)، اعداد و _(یا همون خط ربط)، بطول 255 کاراکتر(در حالت معمول) باشد(اولین کاراکتر اسم نباید عدد باشد). معمولاً اسم ثابت ها را با حروف بزرگ مشخص می کنند. Value مقدار ماکرو می باشد. این مقدار می تواند مانند متغیر ها حاوی هر نوع داده ای باشد. برای تعریف مقدار ماکرو در چندین خط، می توان از علامت یا همون ممیز استفاده کرد. تعریف ماکرو با علامت ; پایان نمی گیرد. اگر در تعریف ماکرو از این علامت استفاده کنید، پیش پردازنده آنرا به مقدار(Value) ماکرو اضافه می کند. مثال هایی از تعریف ماکرو/ثابت: #define x 25 #define IP 127.0.0.1 #define LEADER AlexAsghari #define X_Z_H_H_Y_T_W_W 555.222.111 #define TAX 0.055 #define NoghteVirgools ;;;;;;;;;;; #define MYNAME JohnAkabri وقتی پیش پردازنده با اسم ماکرو در هر جایی از برنامه برخورد می کند، مقدار(Value) ماکرو را جایگزین اسم ماکرو می کند. برای نابود سازی(از بین بردن) ماکرو می توان از دستور پیش پردازنده undef# استفاده کرد. یا به اصطلاح ماکرو را به حالت تعریف نشده(Undefine) در آورد. این عمل را وقتی کارتان کلاً با ماکرو به اتمام رسید انجام دهید. شکل کلی این دستور بصورت زیر می باشد: #undef MacroName undef# دستوری پیش پردازنده برای نابود سازی ماکرو می باشد. MacroName اسم ماکروی موردنظر می باشد. این اسم باید در برنامه موجود باشد. دستور نابود سازی ماکرو با علامت ; پایان نمی گیرد. منبع: Y.P.Y 11 شهريور 1388, 02:10عملگرها به علائمی که عملیاتی را بر روی داده ها انجام می دهند عملگر(Operator) می گویند. و داده هایی که بر رویشان عملیات انجام می شود را عملوند(Operand) می گویند. مثال: X + 10 در این مثال X و 10 عملوند، و + عملگر می باشد. عملگرها در C/C++ به چهار دسته اصلی تقسیم می شوند که عبارتند از: 1- عملگرهای محاسباتی 2- عملگرهای مقایسه 3- عملگرهای منطقی 4- عملگرهای بیتی و عملگرهای جایگزینی/ترکیبی، جداسازی، آدرس و... عملگرهای محاسباتی این دسته از عملگرها، عملیات محاسباتی(ریاضیات) بر روی یک یا چند عملوند(یا داده) انجام می دهند. که عبارتند از: + - * / % ++ -- مثال جمع: X + Y یا Y+ یا X + Y + Z و... مثال تفریق: X - Y یا X- یا X - Y - Z و... مثال ضرب: X * Y یا X * Y * Z و... مثال تقسیم: X / Y یا X / Y / Z و... مثال باقیمانده(قدرمطلق): X % Y یا X % Y % Z و... مثال افزایشی: X++ یا ++X مثال کاهشی: X-- یا --X ممکن است در بعضی از عملیات(عبارات) از چندین عملگر و عملوند استفاده شود، اینجاست که تقدم عملگرها برای انجام عملیات به میان می آید(از بالاترین تقدم تا پایین ترین تقدم): ++ و -- * و / و % + و - عملگرهای مقایسه همانطور که از نامش پیداست جهت مقایسه یک یا چند عملوند(داده) مورد استفاده قرار می گیرد. که عبارتند از: > < >= => == =! مثال بزرگتر: X > Y مثال کوچکتر: X < Y مثال بزرگتر یا مساوی: X >= Y مثال کوچکتر یا مساوی: X <= Y مثال متساوی: X == Y توجه: متساوی با مساوی متفاوت می باشد. تقدم عملگرهای مقایسه به این ترتیب می باشند(از بالاترین تقدم تا پایین ترین تقدم): > و < و >= و => == و =! عملگرهای منطقی این عملگرها بر روی یک یا دو عبارت منطقی(بله یا خیر/درست یا نادرست...) کار می کنند. هر عبارت منطقی دارای 2 بعد می باشد. بعد نادرست که با مقدار 0 و بعد درست که با مقدار غیر 0 مشخص می شود. و عبارتند از: || && ! که به لاتین می شوند OR منطقی، AND منطقی، NOT منطقی. مثال یا: X || Y یا X || Y || Z و... مثال و: X && Y یا X && Y && Z و... مثال نقیض: X! تقدم عملگرهای منطقی به این ترتیب می باشند(از بالاترین تقدم تا پایین ترین تقدم): ! && || عملگرهای بیتی(Bitwise) حوزه عملیات این عملگرها بر روی بیت ها می باشد(بیشترین کاربرد را در کار با سخت افزار دارد). این عملگرها با انواع داده ها(Data types) کاری ندارند و فقط برای مقدار دهی، تست، جایگزینی/انتقال(Shift) بیت ها استفاده می شوند. که عبارتند از: & | ^ ~ >> << که به لاتین می شوند AND بیتی، OR بیتی، XOR بیتی، NOT بیتی، شیفت به چپ، شیفت به راست. تقدم عملگرهای بیتی به این ترتیب می باشند(از بالاترین تقدم تا پایین ترین تقدم): ~ >> و << & ^ | دیگر عملگرها عملگرهای جایگزینی/ترکیبی/انتساب: از ترکیب عملگرهای محاسباتی و علامت = تشکیل می شوند و پایین ترین تقدم را دارند. که عبارتند از: =+ =- =* =/ =% مثال انتساب جمع: X+= Y که معادل X= X + Y می باشد. مثال انتساب تفریق: X-= Y که معادل X= X - Y می باشد. مثال انتساب ضرب: X*= Y که معادل X= X * Y می باشد. مثال انتساب تقسیم: X/= Y که معادل X= X / Y می باشد. مثال انتساب باقیمانده(قدرمطلق): X%= Y که معادل X= X % Y می باشد. عملگرهای آدرس: برای دسترسی به آدرس داده ها در حافظه استفاده می شود. که عبارتند از: & * مثال &: ;X= &Y که آدرس Y در متغیر X قرار می گیرد. مثال *: ;X= 10* که 10 در آدرس X قرار می گیرد. مثال *: ;Z= *X که داده های آدرس X در متغیر Z قرار می گیرد. عملگر جداسازی: از این نوع عملگرها برای جداسازی/تقدم دهی به عبارات استفاده می شود. که عبارتند از: ( ) , معادل لاتین پرانتز و کاما. توجه: همیشه در عبارات مرکب(چند عملگر و عملوند) ابتدا عبارات داخل پرانتز بررسی و اعمال می شوند و بعد بقیه عبارات. مثال ) و (: X = 5 + 10 / (30 + 15) % (10 + (5 + 40)) + 85 مثال ,: X= (Y + 5, Y % 25) + 50 تقدم کلی عملگرها: ( ) ~ ! ++ -- * % / << >> < > =< => == != & ^ | && || = =+ =- =* =/ =% منبع: Y.P.Y 14 شهريور 1388, 18:22تبدیل نوع هر داده ای که نرم افزارها استفاده می کنن�
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 735]
صفحات پیشنهادی
در خواست :ebook آموزش c و اسمبلی
salim_a20-03-2008, 08:23 PMسلام در خواست :ebook آموزش c و اسمبلی:20: با تشکر R£ɀД20-03-2008, 09:53 PMلطفا اول جستجو نمایید آموزش گام به گام زبان برنامه ...
salim_a20-03-2008, 08:23 PMسلام در خواست :ebook آموزش c و اسمبلی:20: با تشکر R£ɀД20-03-2008, 09:53 PMلطفا اول جستجو نمایید آموزش گام به گام زبان برنامه ...
در خواست آموزش#c
View Full Version : در خواست آموزش#c best27-10-2008, 07:44 PMلطفا اموزش C# بزارید ***Spring***28-10-2008, 12:01 AMMicrosoft Visual C# 2008 Step by Step ...
View Full Version : در خواست آموزش#c best27-10-2008, 07:44 PMلطفا اموزش C# بزارید ***Spring***28-10-2008, 12:01 AMMicrosoft Visual C# 2008 Step by Step ...
مرجع خوب واسه آموزش #c
مرجع خوب واسه آموزش #c-akbaro15-04-2008, 03:24 PMسلام. دوستان من دنبال یک کتاب خوب واسه آموزش #c میگشتم. تو بازار یک کتاب پیدا کردم از انتشارات جهان نو ...
مرجع خوب واسه آموزش #c-akbaro15-04-2008, 03:24 PMسلام. دوستان من دنبال یک کتاب خوب واسه آموزش #c میگشتم. تو بازار یک کتاب پیدا کردم از انتشارات جهان نو ...
درخواست منبع فارسی برای آموزش C
View Full Version : درخواست منبع فارسی برای آموزش C emp-ehsan14-08-2006, 10:02 PMيك منبع فارسي كه برنامه نويسي به خصوص زبان سي رو از ابتدا توضيح ...
View Full Version : درخواست منبع فارسی برای آموزش C emp-ehsan14-08-2006, 10:02 PMيك منبع فارسي كه برنامه نويسي به خصوص زبان سي رو از ابتدا توضيح ...
آموزش (پیشرفته) : توابع بازگشتی در Pascal و C/C++
آموزش (پیشرفته) : توابع بازگشتی در Pascal و C/C++-mahdi bg08-03-2007, 05:28 AMسلام می خواستم موضوع توابع بازگشتی رو در زبان Pascal و زبان C/C++ ...
آموزش (پیشرفته) : توابع بازگشتی در Pascal و C/C++-mahdi bg08-03-2007, 05:28 AMسلام می خواستم موضوع توابع بازگشتی رو در زبان Pascal و زبان C/C++ ...
درخواست آموزش #C : حالتwindows application در سی شارپ
درخواست آموزش #C : حالتwindows application در سی شارپ-user13528-04-2009, 12:31 PMسلام! اکثر لینک های c# مربوط به حالت کنسول است. من جزوه آموزشی asp.net ...
درخواست آموزش #C : حالتwindows application در سی شارپ-user13528-04-2009, 12:31 PMسلام! اکثر لینک های c# مربوط به حالت کنسول است. من جزوه آموزشی asp.net ...
آموزش ++c
آموزش ++c-rnavids04-03-2008, 08:03 AMبچه ها من دارم ++c را بصورت کامل یاد می گیرم و چون دوست داشتم به شما هم یاد بدم اونو بصورت قسمت به قسمت برای شما می ذارم.
آموزش ++c-rnavids04-03-2008, 08:03 AMبچه ها من دارم ++c را بصورت کامل یاد می گیرم و چون دوست داشتم به شما هم یاد بدم اونو بصورت قسمت به قسمت برای شما می ذارم.
آموزش جامع زبان سی شارپ (#C) | اسلام احمد زاده | دانلود کتاب
آموزش جامع زبان سی شارپ (#C) | اسلام احمد زاده نام کتاب : آموزش جامع زبان سی شارپ (#C) نویسنده : اسلام احمد زاده حجم کتاب : ۷٫۲۱ مگابایت دسته » کامپیوتر » برنامه ...
آموزش جامع زبان سی شارپ (#C) | اسلام احمد زاده نام کتاب : آموزش جامع زبان سی شارپ (#C) نویسنده : اسلام احمد زاده حجم کتاب : ۷٫۲۱ مگابایت دسته » کامپیوتر » برنامه ...
آموزش فارسی #c
آموزش فارسی #c-hamedya08-04-2009, 11:57 AMآموزش کامل #c به صورت فارسی: http://www.softgozar.com/WebPage/Download.aspx?
آموزش فارسی #c-hamedya08-04-2009, 11:57 AMآموزش کامل #c به صورت فارسی: http://www.softgozar.com/WebPage/Download.aspx?
آموزش sql و c
آموزش sql و c-m-a-8812-08-2008, 05:20 PMبا سلام براي اموزش c و sql كتاب خوب چي ميشناسيد ؟ من تقريبا دستورات اوليه اينها را بلدم كتابي ميخوام كه شامل مثالهاي ...
آموزش sql و c-m-a-8812-08-2008, 05:20 PMبا سلام براي اموزش c و sql كتاب خوب چي ميشناسيد ؟ من تقريبا دستورات اوليه اينها را بلدم كتابي ميخوام كه شامل مثالهاي ...
-
گوناگون
پربازدیدترینها