PDA

View Full Version : سوال: فرق C با ++C در چی هست ؟



mamali-mohammad
جمعه 22 مهر 1390, 00:16 صبح
سلام
من دانشجوی ترم یک سخت افزارم
استادمون قرار شده C و C++ رو آموزش بده
میخواستم ببینم فرق دقیقشون در چی هست ؟
و من در اینترنت دنبال آموزش کدوم یکی باشم بهتره ؟
ممنون

ehp_kz6597
جمعه 22 مهر 1390, 06:51 صبح
سلام
اولین و فکر کنم مهمترین تفاوتش اینه که ++c شی گرا هست ولی c نه

----------------------------
زبان برنامه نویسی سی یک زبان سطح میانی است، یعنی هم امکانات زبانهای سطح بالا را پشتیبانی می کند و هم امکانات زبانهای سطح پایین ولی در اصل یک زبان سطح بالا است. این زبان به صورت بسیار نزدیکی در ارتباط با سیستم عامل یونیکس قرار داشته و در این محیط توسعه و تکامل یافته است، زیرا سیستم عامل یونیکس و بیشتر برنامه هایی که روی این سیستم اجرا می شود به زبان C نوشته شده اند. با این وجود، این زبان به هیچ سیستم عامل یا ماشین خاصی وابستگی ندارد، و می توان از آن برای نوشتن برنامه برای ریزکنترلرها، انواع سی پی یوها و سیستم عاملها استفاده کرد. اگرچه این زبان، زبان برنامه نویسی سیستم نامیده شده است چرا که برای نوشتن برنامه های مترجم (مفسرها) و سیستم های عامل بسیار مفید است، با این وجود این زبان، برای نوشتن برنامه های اصلی در بسیاری از زمینه ها، زبانی کاملاً مناسب و مطلوب است.
ویژگی ها
این زبان یک زبان برنامه نویسی سطح میانی است.
زبان C یک زبان ساخت یافته است.
زبان C قابل انعطاف و بسیار قدرتمند است. در این زبان هیچ محدودیتی برای برنامه نویس وجود ندارد.
C زبان برنامه نویسی سیستم است.
C یک زبان قابل حمل است.
C زبان کوچکی است. تعداد کلمات کلیدی آن انگشت شمار است.
C نسبت به حروف حساس است. و تمام کلمات کلیدی این زبان با حروف کوچک نوشته می شوند.

----------------------------
زبان برنامه نویسی ++C یک زبان برنامه نویسی رایانه ای همه منظوره، شی گرا، سطح بالا و چند رگه (که از برنامه نویسی رویه ای، تجرید داده ها و برنامه نویسی شئ گرا پشتیبانی می کند)، عمومی و با قابلیت های سطح بالا و سطح پایین می باشد. این زبان دارای قابلیت های انواع داده ایستا، نوشتار آزاد، چندمدلی، معمولاً زبان ترجمه شده با پشتیبانی از برنامه نویسی ساخت یافته، برنامه نویسی شی گرا، برنامه نویسی جنریک است.

فلسفه

در کتاب «طراحی و تکامل ++C» استراستروپ قوانین مورد استفاده در طراحی ++C را بیان می نماید:


++C طراحی شده است تا یک زبان عمومی با کنترل نوع ایستا و همانند C قابل حمل و پربازده باشد.
++C طراحی شده است تا مستقیما و بصورت جامع از چندین شیوه برنامه نویسی (برنامه نویسی ساخت یافته، برنامه نویسی شی گرا، انتزاع داده، و برنامه نویسی جنریک)
++C طراحی شده است تا به برنامه نویس امکان انتخاب دهد حتی اگر این انتخاب اشتباه باشد.
++C طراحی شده است تا حداکثر تطابق با C وجود داشته باشد و یک انتقال راحت از C را ممکن سازد.
++C از بکاربردن ویژگی های خاص که مانع از عمومی شدن است خودداری می نماید.
++C از ویژگی هایی که بکار برده نمی شوند استفاده نمی کند.
++C طراحی شده است تا بدون یک محیط پیچیده عمل نماید.

ویژگی های معرفی شده در ++C

در مقایسه با C زبان ++C ویژگی های جدیدی را معرفی نموده است مانند تعریف متغیر به عنوان عبارت، تغییر نوع های همانند تابع، new/delete، نوع داده bool، توابع درون خطی، آرگومان پیشفرض، گرانبارسازی عملگر و تابع، فضای نام و عملگر تعیین حوزه ::، کلاس ها (شامل تمام ویژگی های مربوط به کلاس ها همانند وراثت، اعضای تابع، توابع مجازی، کلاس های انتزاعی، و سازنده ها)، قالب ها، پردازش استثنا، کنترل نوع زمان اجرا، عملگرهای سربار شده ورودی (<<) و خروجی (>>)

حامد مصافی
جمعه 22 مهر 1390, 12:18 عصر
در مورد سوالات این چنین فراوان در انجمن گفتگو شده است. لطفا قبل از ایجاد عنوان جستجو بفرمایید