آموزش سی و سی پلاس پلاس | C & C++

معرفی زبان های برنامه نویسی  C و ++C

زبان برنامه نویسی سی

زبان برنامه نویسی C کامل و جامع، ساخت یافته، دستوری و روندگرا است که به هیچ سخت افزار یا سیستم عامل خاصی وابستگی ندارد.

تاریخچه زبان سی

در سال 1972، دنیس ریچی در آزمایشگاه های Bell زبان سی را از روی زبان B و BCPL ایجاد کرد. استفاده ی گسترده از این زبان سبب تولید نسخه های زیادی از این زبان شد که با یکدیگر سازگاری نداشتند. سال ها بعد، با پیدایش برنامه نویسی شی گرا، از روی زبان C، زبان  ++C را تولید شد.

ویژگی‌های زبان برنامه نویسی سی

  • تاثیر گذارترین زبان برنامه نویسی
  • زبان برنامه نویسی سطح میانی
  • زبان ساخت یافته‌
  • سرعت، قدرت و انعطاف پذیری بالا
  • بدون هیچ محدودیتی برای برنامه نویس
  • دایره کلمات کلیدی کوچک
  • نسبت به حروف حساس
  • دسترسی به API های سیستم‌عامل سیمبیان

متغیر های سی

  • محلی (local)
  • سراسری (global)

انواع متغیرها و داده ها در سی

  • Int: عدد صحیح
  • Float: عدد اعشاری
  • Double: برای استفاده در اعداد اعشاری که نیازمند فضای بیشتر است
  • Char: ذخیرسازی کاراکتر با اشغال 1 بایت فضا
  • long int: داده‌های صحیح که نیازمند فضای بیشتر است
  • short int: داده‌های صحیح بدون نیاز به فضا

زبان برنامه نویسی سی پلاس پلاس

سی پلاس پلاس یک زبان برنامه نویسی می باشد که از روی زبان سی ساخته شده است و دارای ویژگی های زیر می باشد:

  • همه‌منظوره، شیءگرا، سطح بالا و چندرگه
  • دارای قابلیت زبان‌های سطح بالا و پایین به ‌صورت هم‌ زمان
  • دارای قابلیت‌های انواع داده ایستا، نوشتار آزاد، چندمدلی
  • زبان عمومی
  • اعطای امکان انتخاب به برنامه نویس حتی به صورت اشتباهی
  • دارای حداکثر تطابق با C

تاریخچه زبان سی پلاس پلاس

اواخر دهه 70 میلادی کار روی پروژه‌ای به نام سی همراه با کلاس‌ها آغاز شد که در نتیجه آن، در سال 1985 Bjarne Stroustup در آزمایشگاه AT&T زبان سی پلاس پلاس را تولید کرد و در همان سال آن را روانه ی بازار کرد. در سال ۱۹۹۰ راهنمای مرجع ++C نیز منتشر شد. نام سی پلاس پلاس منسوب به ریک ماسکیتی  می باشد. در حین مدت تحقیق، از این زبان بنام C جدید و بعدها C با کلاس یاد می شد.

ویژگی‌های سی پلاس پلاس

  • دارای ویژگی های جدیدتر از C
  • پرکاربرد، سطح میانه، همه منظوره، کامپایلی، وراثت، چندریختی و شیء گرا
  • امکان دستکاری سطح پایین حافظه را فراهم می کند
  • هم‌خوانی ارتباط با زبان سی
  • دارای عملگر افزایش یا Increment
  • قابلیت مدیریت استثنائات
  • امکان توسعه‌ی برنامه های دسکتاپ را فراهم می کند

تفاوت بین سی و سی پلاس پلاس

  • زبان سی، زبان برنامه نویسی ساخت یافته است اما سی پلاس پلاس زبان برنامه نویسی شیءگرا می باشد.
  • سی پلاس پلاس از شی گرایی پشتیبانی می کند اما سی خیر.
  • زبان سی قدیمی تر از زبان سی پلاس پلاس است و امروزه کمتر از آن استفاده می شود.
  • در سی پلاس پلاس استفاده مجدد از Reusable Code میسر می باشد اما در سی این امکان وجود ندارد.
  • در زبان سی قابلیت های Virtual Function، Polymorphism، Operator Overloading وجود نداشت اما در سی پلاس پلاس وجود دارند.
  • انجام مبانی برنامه نویسی در سی از بالا به پایین است اما در سی پلاس پلاس طراحی برنامه از پایین به بالا صورت می پذیرد.
  • اتصال داده ها و توابع در سی امری سخت اما در ++C این فرآیند با استفاده از Object ها به راحتی صورت می گیرد.
  • در سی در هر تابعی می توانستید تابع main را فراخوانی کنید اما در سی پلاس پلاس خیر.
  • ارث بری تنها در سی پلاس پلاس قابل پیاده سازی است.
  • مدیریت خطاها در سی بسیار سخت تر از سی پلاس پلاس است.

فریمورک های سی پلاس پلاس

  • QT
  • wxWidgets
  • دوره برنامه نویسی سی برای مبتدیان

دوره برنامه نویسی سی برای مبتدیان

سه شنبه ۲۴ مهر ۱۳۹۷ - ساعت ۲۲:۰۰
  • دوره سی پلاس پلاس برای مبتدیان – مقدماتی

دوره سی پلاس پلاس برای مبتدیان – مقدماتی

سه شنبه ۲۴ مهر ۱۳۹۷ - ساعت ۲۰:۰۰
  • آموزش برنامه نویسی سیستم های Embeded مدرن

آموزش برنامه نویسی سیستم های Embeded مدرن

شنبه ۲۱ مهر ۱۳۹۷ - ساعت ۰۶:۰۰
  • آموزش گام به گام برنامه نویسی با سی پلاس پلاس (از مبتدی تا پیشرفته)

آموزش گام به گام برنامه نویسی با سی پلاس پلاس (از مبتدی تا پیشرفته)

یکشنبه ۱۵ مهر ۱۳۹۷ - ساعت ۱۸:۰۰
  • آموزش محاسبات علمی با عملکرد بالا با C

آموزش محاسبات علمی با عملکرد بالا با C

چهارشنبه ۱۱ مهر ۱۳۹۷ - ساعت ۰۶:۰۰
  • آموزش راه حل های C++17 STL

آموزش راه حل های C++17 STL

یکشنبه ۰۸ مهر ۱۳۹۷ - ساعت ۰۸:۰۰
  • آموزش گرافیک کامپیوتری با OpenGL مدرن و ++C

آموزش گرافیک کامپیوتری با OpenGL مدرن و ++C

جمعه ۳۰ شهریور ۱۳۹۷ - ساعت ۱۳:۰۰
  • دوره زبان برنامه نویسی سی پلاس پلاس

دوره زبان برنامه نویسی سی پلاس پلاس

شنبه ۲۴ شهریور ۱۳۹۷ - ساعت ۱۷:۰۰
  • آموزش WebAssembly – دسترسی به سی و سی پلاس پلاس در اپلیکیشن های وب

آموزش WebAssembly – دسترسی به سی و سی پلاس پلاس در اپلیکیشن های وب

یکشنبه ۱۸ شهریور ۱۳۹۷ - ساعت ۲۳:۰۰
  • آموزش برنامه نویسی سی برای اپلیکیشن های embedded

آموزش برنامه نویسی سی برای اپلیکیشن های embedded

جمعه ۱۶ شهریور ۱۳۹۷ - ساعت ۱۳:۰۰
  • آموزش استفاده از شیوه های کدنویسی ایمن با C++ Const

آموزش استفاده از شیوه های کدنویسی ایمن با C++ Const

چهارشنبه ۱۴ شهریور ۱۳۹۷ - ساعت ۱۷:۰۰
  • آموزش تسلط بر برنامه نویسی Qt 5 GUI

آموزش تسلط بر برنامه نویسی Qt 5 GUI

شنبه ۱۰ شهریور ۱۳۹۷ - ساعت ۰۳:۰۰
  • آموزش اینترفیس های Type-Safe با ++Modern C

آموزش اینترفیس های Type-Safe با ++Modern C

سه شنبه ۳۰ مرداد ۱۳۹۷ - ساعت ۲۲:۰۰
  • آموزش یادگیری ماشینی با سی پلاس پلاس

آموزش یادگیری ماشینی با سی پلاس پلاس

شنبه ۲۷ مرداد ۱۳۹۷ - ساعت ۱۹:۰۰
  • آموزش توسعه تست محور سی پلاس پلاس

آموزش توسعه تست محور سی پلاس پلاس

سه شنبه ۰۹ مرداد ۱۳۹۷ - ساعت ۱۹:۰۰
  • آموزش الگوهای طراحی سی پلاس پلاس

آموزش الگوهای طراحی سی پلاس پلاس

سه شنبه ۱۲ تیر ۱۳۹۷ - ساعت ۱۶:۰۰
  • آموزش مبانی ++C – نسخه C++17

آموزش مبانی ++C – نسخه C++17

شنبه ۰۲ تیر ۱۳۹۷ - ساعت ۱۱:۰۰
  • آموزش الگو های طراحی در سی پلاس پلاس

آموزش الگو های طراحی در سی پلاس پلاس

پنج شنبه ۲۴ خرداد ۱۳۹۷ - ساعت ۱۶:۰۰
  • آموزش ویژگی های کاربردی C++14 و C++17

آموزش ویژگی های کاربردی C++14 و C++17

سه شنبه ۲۲ خرداد ۱۳۹۷ - ساعت ۱۶:۰۰
  • استفاده از Catch در تست واحد (Unit Testing) با سی پلاس پلاس 

استفاده از Catch در تست واحد (Unit Testing) با سی پلاس پلاس 

دوشنبه ۳۱ اردیبهشت ۱۳۹۷ - ساعت ۱۰:۰۰
  • آشنایی با کتابخانه های سی پلاس پلاس در یادگیری ماشینی

آشنایی با کتابخانه های سی پلاس پلاس در یادگیری ماشینی

پنج شنبه ۲۰ اردیبهشت ۱۳۹۷ - ساعت ۰۴:۰۰