تاریخچه
Flower

++C بر مبنای زبان برنامه نويسی C است. زبان C در سال 1972 در آزمايشگاه Bell Telephone نوسط Dennis Ritchie به عنوان زبان پياده سازی برای سيستم عامل يونيکس طراحی شد. مقدار زيادی از برنامه نويسی يونيکس با زبان C انجام شده است. C در نتيجه تکوين پروسه ای است که با يک زبان قديمی تر به نام BCPL شروع شده بود. زبان BCPL زبانی بر اساس زبان B بوده است که توسط Ken Thompson در آزمايشگاه Bell طراحی شده بود. به دليل اينکه C زبان قدرتمند و انعطاف پذيری بود، سريعا گسترش پيدا کرد. برنامه نويسان شروع به استفاده از آن برای انواع برنامه ها کردند. سازمان های مختلف شروع به پياده سازی نسخه های C خود شدند. تا اينکه در سال 1983، ANSI استاندارد C را تنظيم کرد که به عنوان ANSI Standard C شناخته می شود. کامپايلرهای بعدی C از اين استاندارد پيروی کردند. زبان برنامه نويسي ++C بر اساس زبان C توسط Bjarne Stroustrup ابداع شد. آنچه امروزه ++C ناميده مي شود از سال 1979 آغاز شده است. نسخه اوليه آن "C with classes" ناميده شد که بعدا به ++C تغيير کرد. ++C کليه ويژگی های زبان C را داراست. تفاوت بين آنها اينستکه ++C شي گرائی را پشتيبانی می کند. البته پيشرفت های ديگری هم دارد برای مثال کار با رشته ها و سروکارداشتن با خطاها در آن قوی تر است. نسخه اول ++C ابتدا در AT&T در سال 1983 استفاده شد. اولين نسخه تجاری آن در اکتبر 1985 به بازار آمد. در سال 1998 ANSI و ISO متفقا ++C را استاندارد کردند. به همين دليل اغلب ++C محض را ANSI Standard ++C يا ISO Standard ++C می نامند. با تکامل ++C يک کتابخانه استاندارد هم با آن شکل گرفت. اولين کتابخانه استاندارد ++C کتابخانه stream I/O بود که امکاناتی برای جايگزينی توابع قديمی C مانند printf و scanf مهيا کرد. بعد از آن مهمترين کتابخانه استاندارد کتابخانه Standard Template بود. توجه داشته باشيد که کد C در کامپايلر ++C کامپايل می شود اما عکس آن صادق نيست و کد ++C لزوما در کامپايلر C کامپايل نمی شود.

برخی از ويژگی های زبان
Yellow Rose

زبان های برنامه نويسی مختلفی در دنيا وجود دارد که برای برنامه نويسی مناسب هستند. اما به چند دليل برنامه نويسان حرفه ای C را ترجيح می دهند. برخی از ويژگی های زبان C/C++ عبارتند از:

• ++C زبان برنامه نويسی قدرتمند و انعطاف پذيری است و محدوديتی برای کارهائی که می توان توسط آن انجام داد وجود ندارد. و برای پروژه هائی مانند ساخت سيستم های عامل، پردازشگرهای متن، گرافيک، صفحات گسترده و حتی کامپايلرهای زبان های ديگر بکار می رود.
• انواع مختلفی از کامپايلرهای C، C++، Visual C و برنامه های سودمند جانبی موجود هستند.
• ++C زبان قابل حملی (portable) است يعنی برنامه ای که به زبان ++C نوشته می شود با حداقل تغييرات روی هر سيستمی اجرا شود.
• زبان ++C دارای تعداد کمی کلمات کليدی است. ولی با آن می توان هر برنامه را نوشت.
• هر عبارت در ++C به يک سميکولن (;) ختم می شود. سميکولن برای کامپايلر يک دستور يا عبارت از کد را مشخص می کند.
• ++C حساس به متن است يعني بين حروف بزرگ و کوچک تفاوت قائل می شود. بنابراين دقت کنيد int main() با int Main() يکسان نيست. خيلی از اشتباهات مبتديان به دليل بی توجهی به اين نکته بروز می کند.