Ц против Ц++: разлике и сличности

Ц је основа за Ц++. Иако се Ц++ више користи за десктоп апликације и игре, одлична је опција да почнете са Ц, посебно ако сте нови у свету софтвера. Читајте даље да бисте сазнали зашто.

Шта је Ц?

Ц је структурални програмски језик високог нивоа. Програми написани у Ц-у су преносиви. Ц је и данас један од најбољих програмских језика јер је робустан. Користи се за сложене програме попут уграђених система, драјвера, кернела, системских апликација, оперативних система као што су Мицрософт Виндовс, Аппле ОС Кс, базе података као што је МиСКЛ и неке ИоТ апликације.

Ц је компајлирани језик, чиме се обезбеђује слој апстракције између машинског кода и програма.

Једноставан Ц програм за сабирање два броја ће изгледати овако.

#include<stdio.h>
int main()
{
int a, b, sum;
printf("Enter two numbers to add: ");
scanf("%d%d", &a, &b);
sum = a + b;
printf("nSum of %d and %d is %d", a, b, sum);
return 0;
}

Ево излаза:

Излаз примера Ц програма

Ц програми укључују стдио.х – стандардни улазни излаз.

СТДИО пружа основне улазно-излазне функције као што су принтф и сцанф. принтф се користи за штампање нечега (порука, излаз) на конзоли, док се сцанф користи за преузимање улаза са конзоле. Користимо %д да означимо да су бројеви цели бројеви.

Ако дате децимале, добићете неке чудне одговоре. Да бисте ово избегли, можете користити %ф. Функција маин() је прва функција која се извршава када се програм покрене. Синтакса је врло једноставна – декларисајте типове променљивих и онда их користите.

Шта је Ц++?

Ц++ је заснован на принципима објектно оријентисаног програмирања као што су апстракција, полиморфизам, наслеђивање и инкапсулација. Можете замислити Ц++ као проширење Ц са концептом класа и објеката.

Поседовање објеката за складиштење података дало је уредну структуру програмима. На пример, ако желите да сачувате детаље о ученику, можете да креирате класу ученика и креирате атрибуте као што су име, узраст, хобији, оцене итд., испод класе. Можете креирати прави студентски објекат кад год је то потребно!

class Student {
public: 
char name[20];
int age;
float marks;
};

//This will create an object
Student student1 = new Student();

У стварности, објекат ће бити креиран и меморија ће бити додељена само током времена рада.

  Како променити своју локацију у Покемон Го-у

Ц++ обезбеђује високе перформансе, због чега је најпопуларнији избор чак и данас за развој машина за игре високих перформанси, уграђених система, претраживача, компајлера и апликација заснованих на графици као што је обрада слика.

Неколико база података као што је МонгоДБ је написано на Ц++. Баш као и Ц, Ц++ је преносив.

Хајде да напишемо наш претходни програм за сабирање у Ц++ – приметимо различите функције.

#include <iostream>
using namespace std;
int main() {
int a, b;
cout << "Enter the numbers: "; 
cin >> a >> b;
int sum = a + b;
cout << a << " + " << b << " = " << sum;
return 0;
}

Имајте на уму да користимо цоут и цин уместо принтф и сцанф. Такође, декларације типа могу да се ураде било где у програму пре него што се користи променљива (на пример, збир променљиве). Изјава за штампање је прилично једноставна са само именима променљивих. Имајте на уму да користимо именски простор стд из иостреам заглавља. стд има методе као што су цоут, ин и многе друге.

Сличности између Ц и Ц++

Можете рећи да је Ц подскуп Ц++. Постоји много сличности између Ц и Ц++, било у начину на који су програми написани или у апликацијама за које се користе. Обе су робусне, преносиве и високе перформансе. Неке важне сличности су:

Сно.ФеатуреЕкпланатион1.СинтакОбе имају исту синтаксу, на пример, декларацију променљиве, тачку и зарез на крају реда, конвенције о именовању итд.2.Структурални и процедуралниСваки ред кода се извршава један по један. Програми су структурирани на следећи начин – прво увози, затим декларације променљивих, а затим главни код. 3. Функција Маин() Сав код који треба да се изврши треба да буде унутар функције маин(). маин() је први позив функције током извршавања програма.4.Показивачи И Ц и Ц++ користе показиваче на исти начин. Поинтер је променљива која чува меморијску адресу друге променљиве. На пример, инт а = 1;. Чим се овај код изврши, меморија (рецимо, КСКС0011) ће бити додељена за а. Меморијској локацији ‘а’ може се приступити коришћењем знака амперсанда (&) као инт птр_а = &а;5. Кључне речи и оператори Све кључне речи и оператори присутни у Ц важе и за Ц++. На пример, опсег, статички, публиц, инт, итд. Ц++ такође има додатне операторе и кључне речи. Сличности између Ц и Ц++

  Објашњено АПИ за преузимање ЈаваСцрипта

Разлике између Ц и Ц++

Ц++ је креиран да превазиђе неке од недостатака Ц-а и представља надскуп Ц-а. Дакле, сваки програм написан у Ц-у ће радити у Ц++-у – али не и обрнуто! Главна разлика између Ц и Ц++ је у томе што је Ц++ заснован на објектно оријентисаним принципима (ООП) програмирања. Такође, већи је нагласак на провери типа у Ц++. Постоји и неколико суптилнијих разлика које су наведене у наставку:

ЦЦ++ је развио Деннис Ритцхие у АТ&Т Белл лабораторијама између 1969-1973. Развио Бјарне Строуструп 1979. Не прати принципе објектно оријентисаног програмирања Засновано на ООПС концептима, као што су енкапсулација, полиморфизам и наслеђивањеЦ садржи укупно кључну реч као што је 3 , свитцх, инт, статиц, унион и други.Све кључне речи Ц су важеће у Ц++, а такође је присутна 31 додатна кључна реч. Подржава само процедурално програмирање. .Карактеристике као што су пријатељи, виртуелне функције у Ц++-у побољшавају суштину ООП-а.Ц подржава уграђене типове података.Ц++ подржава и уграђене и кориснички дефинисане типове података кроз концепт класаПостоји одредба за преоптерећење оператора или функцијеЦ++ подржава оба оператора и преоптерећење функција (полиморфизам) Алокација меморије се врши преко маллоц() и цаллоц() функција, а ослобађање коришћењем фрее()Додељивање меморије хапп енс користећи нев оператор, а делокација помоћу оператора делетеЦ не подржава руковање изузеткомПодржава руковање изузетком Фокусира се на процедуру или метод више него на податке Више фокусиран на податке Разлике између Ц и Ц++

Неке друге важне карактеристике присутне само у Ц++ су:

  • Користећи кључну реч намеспаце, можемо креирати променљиве истог имена у различитим именским просторима.
  • Можемо користити функције унутар структуре. Структуре такође могу имати модификаторе приступа.
  • Подржава референтне варијабле.
  Повећајте стопу кликова помоћу ових 14 онлајн ИоуТубе креатора сличица [Free & Paid]

Када користити Ц или Ц++

Ово је веома честа дебата међу програмерима – зашто да учим Ц када могу све у Ц++?

Учење Ц ће вам дати чврсту основу за структуре података, показиваче, кључне речи, концепте стека, гомиле и алокације меморије.

Осим тога, Ц се још увек широко користи за апликације високих перформанси, пошто је Ц компајлер бржи од Ц++ компајлера. Дакле, ако желите да пишете делове кода који не захтевају објекте и класе, виртуелне функције или шаблоне, идите на Ц јер би Ц++ могао бити претерани са својим обимним библиотекама.

Већина кодирања ниског нивоа попут кернела, оперативних система и база података се и даље одржава у Ц-у, тако да ће вам познавање Ц-а такође помоћи да брже научите Ц++.

Ц++ се сматра једним од најбржих и најефикаснијих језика – због чега је и даље један од најбољих програмских језика, посебно за апликације високих перформанси као што су мотори за игре, ИоТ уређаји и десктоп апликације. Многе апликације користе комбинацију Ц и Ц++ кода – за постизање оптималних перформанси и предности објектно оријентисаног програмирања.

Резиме

У овом чланку смо научили основе Ц и Ц++ са једноставним примером програма. Разговарали смо о главним разликама и сличностима између оба језика и када треба користити сваки.

Ако тек почињете свој пут развоја софтвера, почевши од Ц ће вам дати повећање самопоуздања, јер је лако и покрива све концепте програмирања, као што су структуре података, показивачи, меморија и тако даље.

Можда ћете бити заинтересовани за коришћење вдзвдз-овог онлајн Ц компајлера и Ц++ компајлера.